在PHP中,可以使用strtotime()
函數將字符串轉換為日期,同時結合date()
函數進行日期校驗。以下是一個示例:
function isValidDate($dateString, $format = 'Y-m-d') {
// 嘗試將字符串轉換為日期
if (strtotime($dateString, $format) === false) {
return false;
}
// 將轉換后的日期與原字符串進行比較
if (date($format, strtotime($dateString)) !== $dateString) {
return false;
}
// 如果所有檢查都通過,則日期有效
return true;
}
// 示例
$dateString1 = "2022-08-30";
$dateString2 = "2022-13-30";
var_dump(isValidDate($dateString1)); // 輸出: bool(true)
var_dump(isValidDate($dateString2)); // 輸出: bool(false)
在這個示例中,我們定義了一個名為isValidDate
的函數,該函數接受兩個參數:要校驗的日期字符串和日期格式(默認為Y-m-d
)。函數首先嘗試使用strtotime()
將日期字符串轉換為日期,如果轉換失敗,則返回false
。接下來,使用date()
函數將轉換后的日期與原字符串進行比較,如果不匹配,則返回false
。如果所有檢查都通過,則返回true
。