我有以下代码片段:
$now = '2011-12-01 22:32:33';
$datetime = '2011-12-01 00:07:27';
$nowObj = new DateTime($now);
$datetimeObj = new DateTime($datetime);
$diff = $datetimeObj->diff($nowObj); //leaving this in screws up the next line
number_format(1134); //this becomes NaN
当我运行此代码并保留$ diff = ...行时,它会与我在代码中稍后执行的其他数字和数学混淆。例如,我的number_format(1134);后来成为NaN。我正在使用PHP 5.3.1的XAMPP堆栈。这是一个错误吗?
答案 0 :(得分:5)
可以this be related,嗯...
如果你在Windows上,我会确保正确设置时区设置。 php.net上的评论指出了Windows下的一些怪癖和错误行为,如果问题仍然存在,可能会认真考虑使用其他方法来区分日期。
答案 1 :(得分:0)
它似乎是 locale 问题。 如果您在 php.ini 中设置时区?
[Date]
date.timezone = Europe/Rome
欧洲/罗马是我的时区;)
或者您也可以添加
ini_set("date.timezone","Europe/Rome");
代码