Функция date_sub
Функция date_sub вычитает временной интервал из объекта с датой.
Первым параметром принимает объект DateTime, вторым - объект DateInterval.
Синтаксис
date_sub(DateTime $object, DateInterval $interval);
Пример
Вычтем 10 дней из указанной даты:
<?php
$date = new DateTime('2025-06-15');
$interval = new DateInterval('P10D');
date_sub($date, $interval);
echo $date->format('Y-m-d');
?>
Результат выполнения кода:
'2025-06-05'
Пример
Вычтем 1 год и 2 месяца из даты:
<?php
$date = new DateTime('2025-03-20');
$interval = new DateInterval('P1Y2M');
date_sub($date, $interval);
echo $date->format($'Y-m-d');
?>
Результат выполнения кода:
'2024-01-20'
Пример
Функция date_create возвращает объект DateTime.
Можно переписать код в смешанном стиле,
частично ООП и частично функциональным:
<?php
$date = date_create('2025-03-20');
$interval = new DateInterval('P1Y2M');
date_sub($date, $interval);
echo date_format($date, 'Y-m-d');
?>
Результат выполнения кода:
'2024-01-20'