I'm trying to represent a UTC timestamp in different timezones using PHP's date_default_timezone_set function. Daylight saving has just kicked in here (NZ) and in Australia, and I'm getting mixed results...
Here's some test code...
date_default_timezone_set('NZ');
print '<p>NZ time is ' . date('Y-m-d H:i:s T (I)') . '</p>';
date_default_timezone_set('Australia/NSW');
print '<p>NSW time is ' . date('Y-m-d H:i:s T (I)') . '</p>';
date_default_timezone_set('Australia/North');
print '<p>NT time is ' . date('Y-m-d H:i:s T (I)') . '</p>';
date_default_timezone_set('Australia/South');
print '<p>SA time is ' . date('Y-m-d H:i:s T (I)') . '</p>';
From which I get this output...
NZ time is 2014-10-05 14:04:27 NZDT (1)
NSW time is 2014-10-05 12:04:27 EST (1)
NT time is 2014-10-05 10:34:27 CST (0)
SA time is 2014-10-05 11:34:27 CST (1)
Now, the NZ timezone abbreviation is correct (NZDT), and all the Australian times are correct, but the two Australian times where daylight saving is active (as indicated by the php date 'I' format character, which returns a '1' if daylight savings is in place) are still showing the non-DST abbreviation.
Any ideas?