Bug #71061 [Opn->Dup]: DateTime[Immutable]->setTimezone doesn't update local time
Edit report at https://bugs.php.net/bug.php?id=71061&edit=1
ID: 71061
Updated by: requinix@php.net
Reported by: m dot bennewitz at dcmn dot com
Summary: DateTime[Immutable]->setTimezone doesn't update
local time
-Status: Open
+Status: Duplicate
Type: Bug
Package: Date/time related
Operating System: Linux
PHP Version: 7.0.0
Block user comment: N
Private report: N
New Comment:
Duplicate of bug #69916
Previous Comments:
------------------------------------------------------------------------
[2015-12-08 14:16:46] m dot bennewitz at dcmn dot com
Description:
------------
When changing the time zone from UTC to -09:00 the local date gets updated but after changing it
back to UTC it doesn't.
Both DateTime and DateTimeImmutable have the same issue.
Test script:
---------------
$date = new DateTime('2015-09-01+00:00');
var_dump($date);
$date = $date->setTimezone(new DateTimeZone('-09:00'));
var_dump($date);
$date = $date->setTimezone(new DateTimeZone('+00:00'));
var_dump($date);
$date = new DateTimeImmutable('2015-09-01+00:00');
var_dump($date);
$date = $date->setTimezone(new DateTimeZone('-09:00'));
var_dump($date);
$date = $date->setTimezone(new DateTimeZone('+00:00'));
var_dump($date);
Expected result:
----------------
object(DateTime)#1 (3) {
["date"]=> string(26) "2015-09-01 00:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "+00:00"
}
object(DateTime)#1 (3) {
["date"]=> string(26) "2015-08-31 15:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "-09:00"
}
object(DateTime)#1 (3) {
["date"]=> string(26) "2015-09-01 00:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "+00:00"
}
object(DateTimeImmutable)#2 (3) {
["date"]=> string(26) "2015-09-01 00:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "+00:00"
}
object(DateTimeImmutable)#3 (3) {
["date"]=> string(26) "2015-08-31 15:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "-09:00"
}
object(DateTimeImmutable)#1 (3) {
["date"]=> string(26) "2015-09-01 00:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "+00:00"
}
Actual result:
--------------
object(DateTime)#1 (3) {
["date"]=> string(26) "2015-09-01 00:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "+00:00"
}
object(DateTime)#1 (3) {
["date"]=> string(26) "2015-08-31 15:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "-09:00"
}
object(DateTime)#1 (3) {
["date"]=> string(26) "2015-08-31 15:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "+00:00"
}
object(DateTimeImmutable)#2 (3) {
["date"]=> string(26) "2015-09-01 00:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "+00:00"
}
object(DateTimeImmutable)#3 (3) {
["date"]=> string(26) "2015-08-31 15:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "-09:00"
}
object(DateTimeImmutable)#1 (3) {
["date"]=> string(26) "2015-08-31 15:00:00.000000"
["timezone_type"]=> int(1)
["timezone"]=> string(6) "+00:00"
}
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=71061&edit=1
Thread (2 messages)