Bug #60237 [Asn->Dup]: TLA timezone dates produce wrong results with add/diff
| From: | danielc@php.net | Date: | Mon, 21 Nov 2011 02:16:52 +0000 |
| Subject: | Bug #60237 [Asn->Dup]: TLA timezone dates produce wrong results with add/diff | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-165382@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=60237&edit=1
ID: 60237
Updated by: danielc@php.net
Reported by: stas@php.net
Summary: TLA timezone dates produce wrong results with
add/diff
-Status: Assigned
+Status: Duplicate
Type: Bug
Package: Date/time related
Operating System: *
PHP Version: 5.4.0beta2
Assigned To: derick
Block user comment: N
Private report: N
New Comment:
This is a duplicate of https://bugs.php.net/bug.php?id=55253.
Previous Comments:
------------------------------------------------------------------------
[2011-11-07 18:15:45] stas@php.net
Description:
------------
If you diff two dates with TLA timezone (like EDT) and then add the interval back
to the earliest date, you would not get the later date but instead the result will
be one hour off. See example below.
Test script:
---------------
$start = new DateTime('2010-06-04 02:18:48 EDT');
var_dump($start->format('U'));
$end = new DateTime('2010-06-06 18:38:28 EDT');
$ts = $end->format('U');
var_dump($start, $end);
$int = $start->diff($end);
var_dump($int, $start);
var_dump($start->format('U'));
$res = $start->add($int);
var_dump($res);
Expected result:
----------------
.....
object(DateTime)#1 (3) {
["date"]=>
string(19) "2010-06-06 18:38:28"
["timezone_type"]=>
int(2)
["timezone"]=>
string(3) "EDT"
}
Actual result:
--------------
.......
object(DateTime)#1 (3) {
["date"]=>
string(19) "2010-06-06 17:38:28"
["timezone_type"]=>
int(2)
["timezone"]=>
string(3) "EDT"
}
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=60237&edit=1