Как найти разницу между датами
Короткий ответ
Метод diff() возвращает разницу между двумя датами. Полное число дней лежит в свойстве days:
<?php
$start = new DateTime('2025-01-01');
$end = new DateTime('2025-03-15');
echo $start->diff($end)->days;Результат:
73Годы, месяцы и дни
Разницу можно получить по частям — например, чтобы посчитать возраст:
<?php
$diff = (new DateTime('2020-05-10'))->diff(new DateTime('2025-03-15'));
echo $diff->y, ' ', $diff->m, ' ', $diff->d;Результат:
4 10 5Прибавить дни к дате
Метод modify() сдвигает дату на заданный интервал и сам учитывает длину месяцев:
<?php
$date = new DateTime('2025-01-30');
$date->modify('+5 days');
echo $date->format('Y-m-d');Результат:
2025-02-04