Membandingkan Masa dalam PHP: Menyingkap Masa
Dalam PHP, membandingkan masa adalah tugas penting apabila berurusan dengan aplikasi sensitif masa. Untuk mencapai ini dengan berkesan, pengaturcara selalunya perlu mengetahui teknik dan perangkap yang terlibat. Mari kita terokai senario khusus dan penyelesaiannya untuk mendapatkan pemahaman yang lebih mendalam tentang perbandingan masa dalam PHP.
Cabaran: Perbandingan Masa
Pertimbangkan kod berikut:
$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"; }
Dalam kod ini, anda bertujuan untuk menyemak sama ada masa semasa ($NowisTime) lebih besar daripada atau sama dengan masa yang ditentukan ($ThatTime). Walau bagaimanapun, kod tersebut nampaknya tidak berfungsi seperti yang diharapkan.
Penyelesaian: Pengiraan Masa Tepat
Untuk menangani isu ini, cara yang betul untuk membandingkan masa dalam PHP ialah untuk menggunakan fungsi strtotime() untuk menukar perwakilan rentetan masa ($ThatTime) kepada cap waktu. Cap masa ialah perwakilan masa berangka, menjadikannya mudah dibandingkan. Penyelesaian yang diperbetulkan ialah:
$ThatTime = "14:08:10"; if (time() >= strtotime($ThatTime)) { echo "ok"; }
Kini, kod menentukan dengan tepat sama ada cap masa semasa lebih besar daripada atau sama dengan masa yang ditentukan.
Pendekatan Alternatif
Selain menggunakan strtotime(), anda juga boleh menggunakan kaedah lain untuk perbandingan masa:
Dengan memahami teknik dan nuansa perbandingan masa dalam PHP, anda dengan yakin boleh membangunkan aplikasi yang mengendalikan tugas sensitif masa dengan tepat dan berkesan.
Atas ialah kandungan terperinci Mengapa Kod Perbandingan Masa PHP Saya Tidak Berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!