Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah Saya Boleh Menambah Satu Hari ke Tarikh dengan betul dalam PHP untuk Mengendalikan Pergantian Bulan?
Isu Perbalikan Penambahan Tarikh Penetapan
Menambah satu hari pada tarikh sepatutnya menambah tarikh ke hari berikutnya berturut-turut, bergulir ke bulan depan jika perlu. Walau bagaimanapun, dalam kes tertentu, kod mungkin mengembalikan tarikh yang lebih awal daripada tarikh asal, menunjukkan isu peralihan.
Mari kita periksa coretan kod PHP yang diberikan:
$stop_date = date('Y-m-d H:i:s', strtotime("2009-09-30 20:24:00")); echo 'date before day adding: ' . $stop_date; $stop_date = date('Y-m-d H:i:s', strtotime('+1 day', $stop_date)); echo ' date after adding one day. SHOULD be rolled over to the next month: ' . $stop_date;
Apabila menggunakan strtotime(), adalah penting untuk menentukan format tarikh dengan betul. Dalam kod di atas, format tarikh tidak diberikan secara eksplisit, yang boleh membawa kepada gelagat yang tidak dijangka.
Untuk menyelesaikan isu ini, nyatakan secara jelas format tarikh apabila menggunakan strtotime(). Berikut ialah versi kod yang diubah suai:
$stop_date = '2009-09-30 20:24:00'; echo 'date before day adding: ' . $stop_date; $stop_date = date('Y-m-d H:i:s', strtotime($stop_date . ' +1 day')); echo 'date after adding 1 day: ' . $stop_date;
Untuk PHP 5.2.0 dan ke atas, pendekatan alternatif menggunakan kelas DateTime boleh menjadi lebih tepat dan fleksibel:
$stop_date = new DateTime('2009-09-30 20:24:00'); echo 'date before day adding: ' . $stop_date->format('Y-m-d H:i:s'); $stop_date->modify('+1 day'); echo 'date after adding 1 day: ' . $stop_date->format('Y-m-d H:i:s');
Dengan betul menentukan format tarikh dan menggunakan kelas DateTime jika tersedia, kod itu harus menambah satu hari dengan tepat pada tarikh yang diberikan, mengendalikan peralihan dengan betul.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menambah Satu Hari ke Tarikh dengan betul dalam PHP untuk Mengendalikan Pergantian Bulan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!