<?php //2011-03-13T08:00:00+0000 1300003200 America/Chicago CDT $date = new \DateTime('2010-11-07 02:00:00 America/Chicago'); $timestamp = (int) $date->format('U'); //CST 0 OR $timestamp + (3600 * 24 * 126); for($i = 0; ; $i++) { $date = new \DateTime('@' . ($timestamp + (3600 * $i * 24))); $tz = new \DateTimeZone('America/Chicago'); $date->SetTimezone($tz); $is_dst = $date->format('I'); $arr = $tz->getTransitions($timestamp, $timestamp); if('CST' === $arr[0]['abbr'] || -21600 === $arr[0]['offset'] || !isset($is_dst) || !$is_dst) { //$is_dst work with default object. var_dump($arr, $is_dst); break; } }
You have javascript disabled. You will not be able to edit any code.