Menukar Tarikh PHP kepada Format MySQL
Apabila bekerja dengan medan tarikh PHP, mungkin perlu menukarkannya kepada format MySQL 0000-00-00 sebelum memasukkannya ke dalam pangkalan data. Ini boleh dicapai melalui pelbagai kaedah bergantung pada format khusus tarikh PHP.
Penukaran Tarikh untuk Jenis Lajur DATE
Jika lajur MySQL adalah jenis DATE, yang hanya menyimpan bahagian tarikh dan bukan masa, gunakan kod berikut:
$date = date('Y-m-d', strtotime(str_replace('-', '/', $date)));
Kod ini menukar sempang-dipisahkan tarikh dalam PHP kepada format yang dipisahkan slash yang strtotime() boleh menghuraikan dengan betul. Tarikh tersebut kemudiannya diformatkan dalam format MySQL yang diperlukan.
Menukar Tarikh untuk Jenis Lajur DATETIME
Jika lajur MySQL adalah daripada jenis DATETIME, yang menyimpan kedua-dua tarikh dan komponen masa, gunakan kod berikut:
$date = date('Y-m-d H:i:s', strtotime(str_replace('-', '/', $date)));
Kod ini termasuk komponen masa dalam penukaran.
Kaedah Ganti
Jika tarikh PHP tidak mengikut format konsisten yang boleh ditukar menggunakan strtotime(), kaedah alternatif ialah menggunakan ungkapan biasa untuk menghuraikan dan memformat semula tarikh:
$date = '02/07/2009 00:07:00'; $date = preg_replace('#(\d{2})/(\d{2})/(\d{4})\s(.*)#', '-- ', $date);
Ungkapan biasa ini menyusun semula komponen tarikh dan masa ke dalam MySQL yang diperlukan format.
Atas ialah kandungan terperinci Bagaimana untuk Menukar Tarikh PHP kepada Format DATE atau DATETIME MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!