似乎检查错误最安全的方法不是检查错误数量,而是警告。请看下面的例子,其中“m”和“d”被交换,因此不正确。
<?php
var_dump(date_parse_from_format('m.d.Y', '18.10.2024') );
输出:
array(12) {
["year"]=>
int(2024)
["month"]=>
int(18)
["day"]=>
int(10)
["hour"]=>
bool(false)
["minute"]=>
bool(false)
["second"]=>
bool(false)
["fraction"]=>
bool(false)
["warning_count"]=>
int(1)
["warnings"]=>
array(1) {
[10]=>
string(27) "The parsed date was invalid"
}
["error_count"]=>
int(0)
["errors"]=>
array(0) {
}
["is_localtime"]=>
bool(false)
}
?>
该函数简单地将18赋值给“month”字段,且没有错误!因此,只需使用if条件并检查“warning_count”即可检测可能的错误。