在我使用PHP 5.3.3的网站上,以下代码未返回预期结果;
echo strtotime('1994-07-04T23:00:00.000Z');
// 773362800 in 5.3.3 and 5.5 ALL GOOD
echo date('d M Y', strtotime('1994-07-04T23:00:00.000Z'));
// OR
echo date('d M Y', 773362800);
// both return 05 July 1994 on my server running 5.3.3, 5.5 returns 04 July 1994
// NOT SO GOOD! It should be 04 July 1994
我可以使用
修复问题stristr('1994-07-04T23:00:00.000Z', 'T', true)
然而,还有其他一些代码使用相同格式的日期。因此,进行此更改并不理想,我宁愿深究原始代码未返回正确日期的原因。
答案 0 :(得分:2)
您显示的格式是UTC时间。 date()
将使用您服务器的时区。假设您的服务器位于UTC + XXXX时区,它将是7月的5th
,而不是4th
。