Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mengendalikan Tarikh Sebelum 1970 dengan `strtotime()` PHP?

Bagaimanakah Saya Boleh Mengendalikan Tarikh Sebelum 1970 dengan `strtotime()` PHP?

Linda Hamilton
Linda Hamiltonasal
2024-11-17 10:33:03888semak imbas

How Can I Handle Dates Before 1970 with PHP's `strtotime()`?

Memperluaskan Julat strtotime() untuk Tarikh Bersejarah

Masalah:

Anda' menggunakan semula strtotime() untuk menghuraikan tarikh dalam MySQL yang disimpan dalam format yyyy-mm-dd, tetapi anda telah menghadapi had di mana strtotime() tidak boleh memproses tarikh sebelum 1 Januari 1970.

Penyelesaian :

Untuk mengendalikan tarikh sebelum 1970, pertimbangkan pendekatan berikut:

  • Semak Versi dan Platform PHP:

Kemas kini versi dan platform PHP anda, kerana versi terdahulu dan sistem pengendalian mempunyai julat terhad.

  • Gunakan DateTime Objects:

Untuk tarikh di luar julat 13 Dis 1901 hingga 19 Jan 2038, gunakan objek DateTime PHP, yang menawarkan sokongan julat tarikh yang lebih luas.

Sampel Kod:

Prosedur:

$date = date_create($row['value']);
if ($date) {
    echo date_format($date, "F j, Y");
} else {
    // Handle errors
}

OOP:

try {
    $date = new DateTime($row['value']);
    echo $date->format("F j, Y");
} catch (Exception $e) {
    // Handle errors
}

Dengan menggunakan teknik ini, anda boleh mengendalikan tarikh sebelum 1970 dengan berkesan tanpa mengubah struktur pangkalan data anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengendalikan Tarikh Sebelum 1970 dengan `strtotime()` PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn