Menentukan Jika Tarikh Meningkat dalam Julat Yang Ditentukan
Memandangkan tarikh mula dan tamat, bagaimana anda boleh mengesahkan sama ada tarikh yang ditentukan pengguna terletak di dalamnya julat?
Contoh:
$start_date = '2009-06-17'; $end_date = '2009-09-05'; $date_from_user = '2009-08-28';
Menukar kepada Cap Masa
Untuk memudahkan pengesahan ini, adalah berfaedah untuk menukar tarikh untuk cap masa integer menggunakan masa strtto fungsi.
Pelaksanaan:
check_in_range($start_date, $end_date, $date_from_user); function check_in_range($start_date, $end_date, $date_from_user) { // Convert to timestamps $start_ts = strtotime($start_date); $end_ts = strtotime($end_date); $user_ts = strtotime($date_from_user); // Check if user date falls between start and end return (($user_ts >= $start_ts) && ($user_ts <= $end_ts)); }
Penjelasan:
Coretan kod ini menukar tarikh yang diberikan kepada cap masa. Fungsi check_in_range kemudian membandingkan tarikh yang ditentukan pengguna dengan cap masa mula dan tamat. Jika tarikh pengguna lebih besar daripada atau sama dengan cap masa mula dan kurang daripada atau sama dengan cap masa tamat, fungsi itu kembali benar, menunjukkan bahawa tarikh itu berada dalam julat. Jika tidak, ia akan kembali palsu.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menyemak sama ada tarikh berada dalam julat yang ditetapkan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!