Menukar Tarikh PHP kepada Format MySQL
Apabila bekerja dengan tarikh dalam kedua-dua PHP dan MySQL, adalah penting untuk mempunyai format yang konsisten untuk penyepaduan yang mudah . Dalam kes ini, anda ingin menukar tarikh PHP kepada format MySQL 0000-00-00.
Untuk mencapai ini, anda boleh menggunakan tarikh() dan strtotime () fungsi. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa strtotime() tidak mengecam sempang (-), jadi anda perlu menggantikannya dengan garis miring (/).
$date = mysql_real_escape_string($_POST['intake_date']); $date = date('Y-m-d', strtotime(str_replace('-', '/', $date)));
Fungsi str_replace() menukar sebarang sempang (-) dalam rentetan tarikh kepada sengkang (/), menjadikannya serasi dengan strtotime(). Tarikh yang terhasil adalah dalam format YYYY-MM-DD yang diperlukan untuk MySQL.
Sebagai alternatif, jika lajur MySQL anda adalah daripada jenis DATETIME, yang termasuk masa, gunakan kod berikut:
$date = date('Y-m-d H:i:s', strtotime(str_replace('-', '/', $date)));
Jika tarikh anda diformatkan secara berbeza, seperti "02/07/2009 00:07:00," anda boleh menggunakan ungkapan biasa untuk memformatkannya sebelum menukarnya:
$date = preg_replace('#(\d{2})/(\d{2})/(\d{4})\s(.*)#', '-- ', $date);
Ini akan menyusun semula tarikh ke dalam format YYYY-MM-DD HH:MM:SS.
Ingat untuk mysql_real_escape_string() tarikh sebelum memasukkannya ke dalam pangkalan data anda untuk menghalang SQL suntikan.
Atas ialah kandungan terperinci Bagaimana untuk Menukar Tarikh PHP kepada Format YYYY-MM-DD (atau YYYY-MM-DD HH:MM:SS) MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!