[英]php date format regex check
我試圖使用PHP正則表達式對日期字段“ YYYYMMDD
”進行驗證。 我試過這樣的事
/([0-9]{4})([0-9]{2})([0-9]{2})/
但在這一個中,對於MM或DD,它會接受任意兩個數字,如01-99,但我希望MM的01-12和DD的01-31。 這樣做有什么建議嗎?
謝謝
這應該做的工作:
function dateValidate($date) {
$t = strtotime($date);
return date('Ymd', $t) == $date;
}
編輯:值得注意的是,這不會像正則表達式那樣快,但在明顯的性能方面會很好。
除了正則表達式,您還可以拆分字符串並使用checkdate
查看日期是否有效。
正則表達式對於日期驗證似乎不太實用。 為什么不將它拆分成碎片,然后使用checkdate()
?
不要將checkdate用作checkdate('1 \\'','1','2000')驗證為TRUE。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.