Bug #66845 [Nab->ReO]: timezone_open
| From: | thekid@php.net | 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