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 — Ändert ein DateTime-Objekt, wobei die Anzahl der Tage, Monate, Jahre, Stunden, Minuten und Sekunden hinzugefügt wird
Objektorientierter Stil
Prozeduraler Stil
Addiert das gegebene DateInterval-Objekt zu dem angegebenen DateTime-Objekt.
Wie DateTimeImmutable::add(), verwendet aber DateTime.
Die prozedurale Version verwendet das DateTime-Objekt als ersten Parameter.
object
Nur bei prozeduralem Aufruf: Ein von date_create() zurückgegebenes DateTime-Objekt. Diese Funktion verändert dieses Objekt.
interval
Ein DateInterval-Objekt
Gibt das geänderte DateTime-Objekt für die Methodenverkettung zurück.
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');