Функция date_sub

Функция date_sub вычитает временной интервал из объекта с датой. Первым параметром принимает объект DateTime, вторым - объект DateInterval.

Синтаксис

phpdate_sub(DateTime $object, DateInterval $interval);

Пример

Вычтем 10 дней из указанной даты:

php<?php
  $date = new DateTime('2025-06-15');
  $interval = new DateInterval('P10D');
  
  date_sub($date, $interval);
  echo $date->format('Y-m-d');
?>

Результат выполнения кода:

php'2025-06-05'

Пример

Вычтем 1 год и 2 месяца из даты:

php<?php
  $date = new DateTime('2025-03-20');
  $interval = new DateInterval('P1Y2M');
  
  date_sub($date, $interval);
  echo $date->format($'Y-m-d');
?>

Результат выполнения кода:

php'2024-01-20'

Пример

Функция date_create возвращает объект DateTime. Можно переписать код в смешанном стиле, частично ООП и частично функциональным:

php<?php
  $date = date_create('2025-03-20');
  $interval = new DateInterval('P1Y2M');
  
  date_sub($date, $interval);
  echo date_format($date, 'Y-m-d');
?>

Результат выполнения кода:

php'2024-01-20'

Смотрите также

  • функцию date_sub,
    в функциональном стиле
  • функцию date_add,
    в ООП стиле