為了避免在使用PHP的strtotime()
函數時出現錯誤,您可以采取以下幾個步驟:
確保輸入的日期字符串格式正確。strtotime()
函數支持以下日期格式:mm/dd/yyyy
、dd-mm-yyyy
、yyyy-mm-dd
、yyyy/mm/dd
、mm-dd-yyyy
(ISO-8601)、dd/mm/yyyy
(ISO-8601)、yyyy-mm-dd
(ISO-8601)、HH:mm
、HH:mm:ss
、D, d M Y H:i:s
、U
。如果輸入的日期字符串格式與這些格式之一不匹配,strtotime()
將返回FALSE
。
使用strtotime()
的第二個參數來指定時區。這可以避免由于時區差異導致的錯誤。例如:
$date = "2022-01-01";
$timezone = "America/New_York";
$timestamp = strtotime($date, $timezone);
try-catch
語句來捕獲DateTimeException
異常。這將允許您在出現錯誤時處理異常,而不是讓腳本崩潰。例如:$date = "invalid date";
try {
$timestamp = strtotime($date);
} catch (DateTimeException $e) {
echo "Error: " . $e->getMessage();
}
DateTime::createFromFormat()
方法嘗試創建一個DateTime
對象。如果創建成功,則可以使用getTime戳()
方法獲取時間戳;如果失敗,則將返回FALSE
。例如:$date = "invalid date";
$dateTime = DateTime::createFromFormat('Y-m-d', $date);
if ($dateTime) {
$timestamp = $dateTime->getTimeStamp();
} else {
echo "Error: Invalid date format.";
}
遵循這些步驟可以幫助您避免在使用strtotime()
函數時出現錯誤。