Rumah > pembangunan bahagian belakang > tutorial php > Mengapa kod PHP saya tidak menyemak dengan betul jika tarikh jatuh di antara dua tarikh lain?

Mengapa kod PHP saya tidak menyemak dengan betul jika tarikh jatuh di antara dua tarikh lain?

Mary-Kate Olsen
Lepaskan: 2024-11-17 17:09:02
asal
500 orang telah melayarinya

Why is my PHP code not correctly checking if a date falls between two other dates?

PHP - Menyemak sama ada Satu Tarikh Jatuh Antara Dua Tarikh Lain

Soalan:

A coretan kod yang diambil daripada Stack Overflow telah diubah suai untuk menyemak sama ada tarikh hari ini berada dalam julat tertentu. Walau bagaimanapun, kod yang diubah suai tidak berfungsi seperti yang dimaksudkan.

$paymentDate = date('d/m/Y');
$contractDateBegin = date('d/m/Y', '01/01/2001');
$contractDateEnd = date('d/m/Y', '01/01/2015');

if ($paymentDate > $contractDateBegin && $paymentDate < $contractDateEnd) {
  echo "is between";
} else {
  echo "NO GO!";
}
Salin selepas log masuk

Jawapan:

Untuk menyelesaikan isu tersebut, fungsi PHP strtotime() harus digunakan untuk menukar tarikh kepada format cap masa. Ini memastikan tarikh dibandingkan dengan betul berdasarkan nilainya sebagai cap masa.

$paymentDate = date('Y-m-d');
$paymentDate = date('Y-m-d', strtotime($paymentDate));
$contractDateBegin = date('Y-m-d', strtotime("01/01/2001"));
$contractDateEnd = date('Y-m-d', strtotime("01/01/2012"));

if (($paymentDate >= $contractDateBegin) && ($paymentDate <= $contractDateEnd)) {
    echo "is between";
} else {
    echo "NO GO!";
}
Salin selepas log masuk

Nota:

Untuk memastikan tarikh hari ini disertakan dalam perbandingan, gunakan > ;= dan <= bukannya > dan <.

Atas ialah kandungan terperinci Mengapa kod PHP saya tidak menyemak dengan betul jika tarikh jatuh di antara dua tarikh lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan