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


How to verify valid date and format, error for each

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

//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." ;
}

如果您要获取值以供以后使用…

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

如果你关心的是插入到SQL中的字符串格式,你可以通过date()或其他方式进行过滤