-2

这里说:

时间戳是自格林威治标准时间 1970 年 1 月 1 日午夜以来的秒数。无论您身在何处,给定的时间戳都代表完全相同的时刻,而与时区无关。

所以我尝试了:

$date_str="2010-01-10 12:00";

$TimeZone_toronto=new DateTimeZone('America/Toronto');
$date_obj_toronto=new DateTime($date_str, $TimeZone_toronto);
$date_time_stamp_toronto=$date_obj_toronto->format('U'); 

$TimeZone_GMT=new DateTimeZone('GMT');
$date_obj_GMT=new DateTime($date_str, $TimeZone_GMT);
$date_time_stamp_GMT=$date_obj_GMT->format('U');

根据上面的报价:应该是 $date_time_stamp_toronto==$date_time_stamp_GMT

但这里是价值观:

$date_time_stamp_toronto = 1263142800
$date_time_stamp_GMT     = 1263124800

所以 => $date_time_stamp_toronto!=$date_time_stamp_GMT 因为:

1263142800!=1263124800

真相在哪里?

4

1 回答 1

7

多伦多和格林威治当地时间的“2010-01-10 12:00”显然是两个截然不同的时间,具有不同的时间戳。

于 2013-08-14T14:56:38.683 回答