Depending on what your use case is, adding months might or might not give you the correct result.
// Prints "2024-03-02" instead of "2024-02-29"
print Date::fromString('2024-01-31T10:00:00')
->add(new DateInterval('P1M0D')
->format('Y-m-d');
(PHP 5 >= 5.3.0, PHP 7, PHP 8)
DateTime::add -- date_add — Modifies a DateTime object, with added amount of days, months, years, hours, minutes and seconds
Об'єктно-орієнтований стиль
Процедурний стиль
Adds the specified DateInterval object to the specified DateTime object.
Like DateTimeImmutable::add() but works with DateTime.
The procedural version takes the DateTime object as its first argument.
object
Тільки процедурний стиль: об'єкт DateTime повертається функцією date_create(). Вона змінює цей об'єкт.
interval
A DateInterval object
Повертає змінений об'єкт DateTime для ланцюжків методів.
Depending on what your use case is, adding months might or might not give you the correct result.
// Prints "2024-03-02" instead of "2024-02-29"
print Date::fromString('2024-01-31T10:00:00')
->add(new DateInterval('P1M0D')
->format('Y-m-d');