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 por procedimientos
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
Solamente para el estilo por procedimientos: Un objeto DateTime devuelto por date_create(). La función modifica este objeto.
interval
Un objeto DateInterval
Returns the modified DateTime object for method chaining.
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');