Dalam PHP, membandingkan masa boleh dicapai menggunakan pendekatan yang berbeza. Mari kita terokainya dan selesaikan isu khusus dalam membandingkan masa.
Masalah:
Kod yang diberikan gagal membandingkan masa dengan betul dan mengeluarkan "ok" seperti yang dijangkakan:
$ThatTime ="14:08:10"; $todaydate = date('Y-m-d'); $time_now=mktime(date('G'),date('i'),date('s')); $NowisTime=date('G:i:s',$time_now); if($NowisTime >= $ThatTime) { echo "ok"; }
Penyelesaian 1:
Gunakan fungsi strtotime() untuk menukar rentetan masa kepada cap masa:
$ThatTime ="14:08:10"; if (time() >= strtotime($ThatTime)) { echo "ok"; }
Penyelesaian 2:
Gunakan kelas DateTime, yang turut mengambil kira zon waktu:
$dateTime = new DateTime($ThatTime); if ($dateTime->diff(new DateTime)->format('%R') == '+') { echo "OK"; }
Rujukan:
https://php.net/datetime.diff
Atas ialah kandungan terperinci Bagaimana untuk Membandingkan Masa dalam PHP dan Membetulkan Ralat Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!