我有以下代码:
<?php
$dateString = '12.12.12';
$dateCheckArray['format'] = 'dd-mm-yyyy';
$validator = new Zend_Validate_Date($dateCheckArray);
if ($validator->isValid($dateString)) {
echo 'valid';
}
else {
echo 'invalid';
}
对于大多数格式都可以正常工作,但是对于指定的格式,当使用。日期而不是-日期。
例如,对于之前指定的日期(12.12.12),脚本将回显'valid',即使它显然不适合格式。
谁能指出为什么会发生这种情况?ZF-7583有一个bug: Zend_Date::isDate接受无效日期。这就是为什么有些日期显示正确。最好使用正则表达式验证。
你可以查看这篇文章的正则表达式来验证日期格式dd/mm/yyyy