的strtotime正在从1970-01-01(UTC)计算和日期在使用我的时区,即美国/纽约 一个简单的例子:PHP的strtotime和日期函数使用不同的时区
哪里时间戳为0:
var_dump(date('Y-m-d h:i:s', 0));
打印:1969-12-31 07:00:00
它应该返回0,它返回
var_dump(strtotime('1969-12-31 07:00:00'));
-43200
现在,很明显,我可以在时区添加到该日期即
strtotime($date . ' -5')
,它会工作。
但是,我在任何地方都使用了strtotime
函数。
我试着玩_$ENV['TZ']
和date_timestamp_get()
; 但我无法同步它们。
我还修改了php.ini中的date.timezone到America/New_York,但仍然没有任何结果。
最后,强制使用date_timestamp_set('UTC')
的时区,工作正常,两个日期同步。但是,我需要从服务器的时区。
请指教,我的想法
我有点困惑,你在这里遇到问题。你究竟想要做什么?你是否想把一切设置为UTC? – wajiw 2010-11-26 03:19:50