Сравнение дат в PHP: примеры и код

Чтобы сравнить две даты в PHP, вы можете использовать различные методы в зависимости от формата дат. Вот несколько примеров с кодом:

  1. Использование strtotime() и операторов сравнения:

    $date1 = '2022-01-01';
    $date2 = '2022-02-01';
    if (strtotime($date1) < strtotime($date2)) {
    echo $date1 . ' is earlier than ' . $date2;
    } elseif (strtotime($date1) > strtotime($date2)) {
    echo $date1 . ' is later than ' . $date2;
    } else {
    echo $date1 . ' is the same as ' . $date2;
    }
  2. Использование объектов DateTime:

    $date1 = new DateTime('2022-01-01');
    $date2 = new DateTime('2022-02-01');
    if ($date1 < $date2) {
    echo $date1->format('Y-m-d') . ' is earlier than ' . $date2->format('Y-m-d');
    } elseif ($date1 > $date2) {
    echo $date1->format('Y-m-d') . ' is later than ' . $date2->format('Y-m-d');
    } else {
    echo $date1->format('Y-m-d') . ' is the same as ' . $date2->format('Y-m-d');
    }
  3. Использование date_create() и date_diff():

    $date1 = date_create('2022-01-01');
    $date2 = date_create('2022-02-01');
    $interval = date_diff($date1, $date2);
    if ($interval->invert) {
    echo $date1->format('Y-m-d') . ' is later than ' . $date2->format('Y-m-d');
    } elseif (!$interval->days) {
    echo $date1->format('Y-m-d') . ' is the same as ' . $date2->format('Y-m-d');
    } else {
    echo $date1->format('Y-m-d') . ' is earlier than ' . $date2->format('Y-m-d');
    }

Это всего лишь несколько примеров того, как можно сравнивать даты в PHP. Каждый метод предоставляет разные способы сравнения дат в зависимости от ваших конкретных требований.