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 — Modifica un objeto DateTime, añadiendo una cantidad de días, meses, años, horas, minutos y segundos
Estilo orientado a objetos
Estilo procedimental
Añade el objeto DateInterval especificado al objeto DateTime especificado.
Igual que DateTimeImmutable::add(), pero funciona con DateTime.
La versión procedimental toma el objeto DateTime como su primer argumento.
object
Solo en estilo procedimental: Un objeto DateTime retornado por la función date_create(). Esta función modifica este objeto.
interval
Un objeto DateInterval
Retorna el objeto modificado DateTime para encadenar métodos.
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');