Membandingkan Tarikh dalam PHP: Mengendalikan Hari Tidak Berlapik Sifar
Anda ingin membandingkan tarikh semasa dan tersimpan yang tidak mempunyai padding sifar, seperti "2011-10-2," untuk menentukan yang lebih besar. Pendekatan awal menggunakan "<" perbandingan mungkin menghasilkan keputusan yang salah. Berikut ialah kaedah alternatif:
Kaedah 1: Menggunakan strtotime()
Jika semua tarikh yang dipersoalkan adalah selepas 1 Januari 1970, anda boleh menggunakan strtotime():
$today = date("Y-m-d"); $expire = $row->expireDate; //from database $today_time = strtotime($today); $expire_time = strtotime($expire); if ($expire_time < $today_time) { /* do Something */ }</p> <p><strong>Kaedah 2: Menggunakan DateTime Class (PHP 5.2.0 )</strong></p> <p>Untuk PHP versi 5.2.0 dan ke atas, kelas DateTime menawarkan pendekatan lain:</p> <pre class="brush:php;toolbar:false">$today_dt = new DateTime($today); $expire_dt = new DateTime($expire); if ($expire_dt < $today_dt) { /* Do something */ }
Atas ialah kandungan terperinci Bagaimana untuk Membandingkan Tarikh dalam PHP Tanpa Padding Sifar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!