如何验证有效的日期和格式,每个错误

时间:2014-06-13 17:10:33

标签: php regex date

我使用的是日期格式YYYY-MM-DD。我希望检查正确的格式和日期有效性,并为每个格式回显相应的错误消息。即使日期有效,我的结果也是回显无效日期:

//validate date
if (!preg_match('/^(\d{4})-(\d{2})-(\d{2})$/',$date))   
{
    $dateErr = "Format must be \"YYYY-MM-DD\"" ;
}
if (preg_match('/^(\d{4})-(\d{2})-(\d{2})$/', $postedDate, $datebit)) 
{
    return checkdate($datebit[2] , $datebit[3] , $datebit[1]);
}
else    
{
    $dateErr = "Must be valid date." ;
}

1 个答案:

答案 0 :(得分:0)

如果您打算稍后使用这些值以供使用......

$YYYY=substr($date,0,4);
$DD=substr($date,7,2);
$MM=substr($date,5,2);
checkdate($MM,$DD,$YYYY);

如果你真的担心插入sql或其他东西的字符串的格式,你可以通过date()或其他东西过滤它