更新:问题是旧的PHP版本。
美国东部标准时间13:06,UTC时间18:06和莫斯科时间21:06(source),我运行了以下PHP代码:
date_default_timezone_set('America/New_York');
echo date('G:i')." America/New_York\n";
date_default_timezone_set('UTC');
echo date('G:i')." UTC\n";
date_default_timezone_set('Europe/Moscow');
echo date('G:i')." Europe/Moscow\n";
结果:
13:06 America/New_York
18:06 UTC
22:06 Europe/Moscow
目前,由于夏令时,莫斯科的时区偏移量为+3,但PHP明显使用+4。
这让我想知道PHP获取其时区信息的位置,以及PHP中是否存在错误。