PHP - 检查一个日期是否在两个其他日期之间
问题:
A从 Stack Overflow 检索的代码片段已被修改,以检查今天的日期是否在特定范围内。但是,修改后的代码无法按预期运行。
$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!"; }
答案:
要解决此问题,应使用 strtotime() PHP 函数进行转换日期为时间戳格式。这可确保根据时间戳值正确比较日期。
$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!"; }
注意:
要确保今天的日期包含在比较中,请使用 > ;= 和 <= 而不是 >和 <.>
以上是为什么我的 PHP 代码无法正确检查某个日期是否位于其他两个日期之间?的详细内容。更多信息请关注PHP中文网其他相关文章!