Bug #71061 [Opn->Dup]: DateTime[Immutable]->setTimezone doesn't update local time

From: Date: Tue, 08 Dec 2015 21:33:10 +0000
Subject: Bug #71061 [Opn->Dup]: DateTime[Immutable]->setTimezone doesn't update local time
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-197706@lists.php.net to get a copy of this message
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)

« previous php.bugs (#197706) next »