在 PHP 中,有時需要將一種日期格式轉換為另一種日期格式。有幾種內建函數和技術可以有效地解決此任務。
一種方法是使用 date() 和 strtotime() 函數。但是,在某些情況下,strtotime() 可能會傳回不正確的時間戳記或無法辨識特定的日期格式。本文根據您使用的 PHP 版本深入探討了替代方法。
適用於 PHP 5.3 和上面,更精確的解決方案是使用 DateTime::createFromFormat 方法。此方法需要兩個參數:
例如,要從將「y-m-d-h-i-s」格式轉換為「Y-m-d H:i:s」格式:
$dt = DateTime::createFromFormat('y-m-d-h-i-s', '14-02-2023-03-10-15'); $new_date = $dt->format('Y-m-d H:i:s');
如果您使用的是PHP 5.2或更低版本,您可以使用以下命令手動解析日期元素子字串()。擁有這些元素後,您可以使用 mktime() 函數建立時間戳記。然而,這個過程可能很麻煩並且容易出錯。
對於 PHP 5.2 及更低版本,一個更直接的選擇是使用 strftime() 理解的可識別日期格式。例如,您可以使用下列格式從「y-m-d-h-i-s」格式轉換:
$old_date = date('l, F d y h:i:s'); $old_date_timestamp = strtotime($old_date); $new_date = date('Y-m-d H:i:s', $old_date_timestamp);
以上是PHP中如何有效率地轉換日期格式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!