为什么strtotime返回false?

时间:2012-05-15 11:28:32

标签: php date strtotime

if(strtotime($date_in)==false){
    echo $date_in." wtf?";
}

输出:

  

2012-05-12 wtf?

为什么strtotime($date_in)会返回false

2 个答案:

答案 0 :(得分:3)

尝试:

if(strtotime($date_in)===false){
    echo "[$date_in] wtf?";
}

如果false的测试始终使用===。用括号包装$date_in变量也可以帮助您查看是否有空格。

http://php.net/manual/en/function.strtotime.php

答案 1 :(得分:2)

我试图成功复制此问题,但只有在我将默认时区更改为:

之后
date_default_timezone_set('Europe/Brussels');

所以,也许您可​​以检查您的ini文件,或使用date_timezone_get并确保您的设置知道如何处理您正在使用的日期格式?

或者,或者如果php.ini出于某种原因没有限制,你可以查看datetime object