学习约会,他们现在让我很难过。
$london = new DateTime();
$london->setTimestamp(0);
$london->setTimeZone(new DateTimeZone('Europe/London'));
echo $london ->format('d-m-Y H-i-s');
结果:
01-01-1970 01-00-00
UTC +0:00
因此午夜不应该是伦敦吗?例如,New York 返回上一个日期的 19:00,这是正确的UTC -5:00
。莫斯科返回01-01-1970 03-00-00
这又是不正确的(UTC +3:00
而不是UTC +4:00
)
但是,当不使用->setTimestamp
时,伦敦当前时间会正确呈现。
实时代码: http ://sandbox.onlinephpfunctions.com/
另外,我的本地时区是Europe/Prague
(UTC +1:00
)。也经过测试date_default_timezone_set('Europe/London')
。
我认为我的逻辑有一些错误?