Php 为什么';date函数不会给我一个错误吗?

Php 为什么';date函数不会给我一个错误吗?,php,date,Php,Date,我只是好奇如何让date函数为无效日期抛出一个错误。下面是我尝试过的,输出在注释中。见下文: echo date("n",strtotime("Nov"))."\n"; //outputs 11 as expected echo date("n",strtotime("nov"))."\n"; //outputs 11 as expected echo date("n",strtotime("dec"))."\n"; //outputs 12 as expected echo date("n"

我只是好奇如何让date函数为无效日期抛出一个错误。下面是我尝试过的,输出在注释中。见下文:

echo date("n",strtotime("Nov"))."\n"; //outputs 11 as expected
echo date("n",strtotime("nov"))."\n"; //outputs 11 as expected
echo date("n",strtotime("dec"))."\n"; //outputs 12 as expected 
echo date("n",strtotime("nova"))."\n"; //outputs 12 but instead I expected an error

是否有一个简单的函数可用于确保文本日期有效,或者我是否必须使用自己的数组进行测试?

该函数根据以下条件返回true/false:


RTFM:
返回格式化的日期字符串。如果时间戳使用非数字值,则返回FALSE并发出E_警告级别错误。
。Strotime也是如此。失败时返回布尔值false,该日期()将被视为整数
0
。如果你有
日期('r',…)
你会看到你有1969年12月,因为几乎可以肯定你在GMT+x时区。”//输出12,但我预期会有一个错误”-它应该打印1月(1970年1月1日)的
1
;与
日期(“n”,false)
日期(“n”,0)
@VolkerK相同,请参见
if (($timestamp = strtotime($str)) === false) {
    // could not be parsed
} else {
    // valid
}