Сравнение дат в PHP, дающее непредвиденные результаты - PullRequest
0 голосов
/ 08 марта 2019

Я форматирую даты в американском стиле mm/dd/yyyy (без времени) и сравниваю даты, но не получаю ожидаемых результатов.

echo $startDate ;  // 09/14/2018
echo $nextDate ;   // 03/08/2019
echo $stopDate ;   // 03/08/2019

Перечисленные выше переменные создаются следующим образом:

$nextDate = date('m/d/Y',strtotime("today")) ;

А затем сравнивать даты как:

if ($nextDate >= $startDate && $nextDate <= $stopDate) {
  ...
  do stuff
  ...
}

$nextDate больше $startdate и равно $stopDate, но оно не входит в оператор IF. Что мне здесь не хватает?

1 Ответ

1 голос
/ 08 марта 2019

Сделайте это так с strtotime(),

$startDate = strtotime($startDate);
$stopDate= strtotime($stopDate);
$nextDate =strtotime("today");

if ($nextDate >= $startDate && $nextDate <= $stopDate) {
  ...
  do stuff
  ...
}

РАБОЧИЙ ДЕМО: https://3v4l.org/BWZN5

...