Menggunakan PHP untuk Memformat Tarikh dalam ISO 8601
Anda telah menghadapi isu di mana tarikh dalam pangkalan data MySQL anda dipaparkan secara tidak betul dalam ISO format 8601. Khususnya, tarikh seperti "17 Okt 2008" dipaparkan sebagai "1969-12-31T18:33:28-06:00."
Analisis Masalah
The kod yang anda gunakan untuk memformat tarikh ialah:
<?= date("c", $post[3]) ?>
Walau bagaimanapun, hujah kedua kepada fungsi date() mestilah cap masa UNIX, bukan rentetan cap masa pangkalan data. Cap masa UNIX ialah perwakilan berangka bagi bilangan saat yang telah berlalu sejak 1 Januari 1970.
Penyelesaian
Untuk membetulkannya, anda perlu menukar pangkalan data anda cap masa kepada cap masa UNIX menggunakan fungsi strtotime():
<?= date("c", strtotime($post[3])) ?>
Ini akan memastikan bahawa fungsi date() menerima cap masa UNIX yang sah dan memformat tarikh dengan betul dalam format ISO 8601.
Atas ialah kandungan terperinci Bagaimana untuk Memformat Tarikh dengan betul dalam ISO 8601 Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!