我已经在构造函数中设置了默认时区,但是date()仍然给我错误的时间…
$time = 'Etc/GMT-4';
date_default_timezone_set($time);
和
date('g:iA. M j, Y') . ' in ' . date_default_timezone_get() . '.';
是
7:00AM. Mar 13, 2014 in Etc/GMT-4.
不是11:00AM. Mar 12, 2014 in Etc/GMT-4.
除了所有的混乱
now()
和time()
给出不同的输出
显然这是一个PHP行为或一个错误,但我们想称之为:
由于某些原因,Etc/GMT时区以"错误的方式"实现GMT偏移
(来源:https://bugs.php.net/bug.php?id=34710)
所以,如果你是在gmt4中你必须使用
date_default_timezone_set('Etc/GMT+4');
对