PHP版本:5.5.9-1ubuntu4.5
PHP有导致不同的时区两个日期时间
php.ini
相关的配置:
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
;date.timezone = UTC
我的PHP代码:
<?php
$datetime1 = new DateTime('2009-10-01 00:00:00');
$datetime2 = new DateTime('2009-11-01 00:00:00');
echo $datetime1->format('c') . '<br/>';
echo $datetime2->format('c') . '<br/>';
,当我从浏览器访问代码,我得到这个结果:
2009-10-01T00:00:00+08:00
2009-11-01T00:00:00+07:00
我的问题:为什么上面两个日期有不同的时区?
当我将该date.timezone
设置为UTC或其他时区时,上面的代码结果将给出正确的时区值。
如果您未通过php.ini设置时区,那么您的代码在哪个时区?它可能在时区中有你的两个日期之间的DST切换。 – 2014-11-03 06:27:39
使用'date_default_timezone_get()'查看当前时区。 – 2014-11-03 06:42:22