Bug #66845 [Nab->ReO]: timezone_open

From: Date: Fri, 07 Mar 2014 14:50:10 +0000
Subject: Bug #66845 [Nab->ReO]: timezone_open
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-184606@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=66845&edit=1 ID: 66845 Updated by: thekid@php.net Reported by: thekid@php.net Summary: timezone_open -Status: Not a bug +Status: Re-Opened Type: Bug Package: Date/time related Operating System: Windows 7 PHP Version: 5.6.0alpha3 Block user comment: N Private report: N New Comment: @derick - what you can't see as my reproducing script doesn't include it is that the "deprecated" identifier is returned from a call to timezone_transitions_get() in the first place: php -ddate.timezone=Europe/Berlin -r 'var_dump(timezone_transitions_get(timezone_open("Europe/Berlin")));' array(145) { ... [143]=> array(5) { ["ts"]=> int(2121901200) ["time"]=> string(24) "2037-03-29T01:00:00+0000" ["offset"]=> int(7200) ["isdst"]=> bool(true) ["abbr"]=> string(4) "CEST" } [144]=> array(5) { ["ts"]=> int(2140045200) ["time"]=> string(24) "2037-10-25T01:00:00+0000" ["offset"]=> int(3600) ["isdst"]=> bool(false) ["abbr"]=> string(3) "CET" } } One could regard this as a bug in that function then. Previous Comments: ------------------------------------------------------------------------ [2014-03-07 14:39:39] derick@php.net Thank you for taking the time to write to us, but this is not a bug. Please double-check the documentation available at http://www.php.net/manual/ and the instructions on how to report a bug at http://bugs.php.net/how-to-report.php Yes, this is a bug fix. If you want to use Europe/Berlin, you need to use Europe/Berlin. PHP 5.6 adds supports for using "type 1" (+03:00) and "type 2" (CEST/CET) as timezone object, where previously PHP wanted to be nice and allow the use of the deprecated abbreviations to be "upgraded" to Timezone Identifiers. ------------------------------------------------------------------------ [2014-03-07 13:33:10] thekid@php.net Description: ------------ timezone_open() behaviour has changed between PHP 5.5 and PHP 5.6 Test script: --------------- $ php -ddate.timezone=Europe/Berlin -r 'var_dump(timezone_open("CEST"));' Expected result: ---------------- object(DateTimeZone)#1 (2) { ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Berlin" } Actual result: -------------- object(DateTimeZone)#1 (2) { ["timezone_type"]=> int(2) ["timezone"]=> string(4) "CEST" } ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=66845&edit=1

« previous php.bugs (#184606) next »