进入regex
的{{1}}表达式将以
preg_split
或如何在PHP中验证格式7-Mar-10
的日期
感谢。
答案 0 :(得分:9)
答案 1 :(得分:0)
DateTime类的createFromFormat方法(也以function形式提供)允许用户根据给定格式解析日期字符串。如果您想查看哪些内容出错,该课程还可以帮助您跟踪错误。
这是一个快速的yay / nay验证功能:
function valid($date, $format = 'j-M-y') {
$datetime = DateTime::createFromFormat($format, $date, new DateTimeZone('UTC'));
$errors = DateTime::getLastErrors();
return ($errors['warning_count'] + $errors['error_count'] === 0);
}
var_dump(valid('7-Mar-10')); // bool(true)
var_dump(valid('7-3-10')); // bool(false)
当然,以上仅用于验证单一格式的日期(并且仅在PHP 5.3中可用),因此如果您只是想接受任何日期(即使是'错误'日期,自动转换为正确的值),或者出于任何原因还不能使用PHP 5.3,然后如其他答案所述,strtotime会有所帮助。
答案 2 :(得分:-3)