PHP – Date – Sumar meses
Función que suma un número determinado de meses a una fecha en formato yyyy-mm-dd. La fecha original no se modifica y devuelve la fecha con los meses sumados.
No se comprueba que la fecha sea válida.
/** * Class HelperDate */ abstract class HelperDate { /** * Suma un número de meses a una fecha. * Formato de fecha: yyyy-mm-dd. * * @param string $fecha * @param int $meses * * @return string */ public static function sumarMeses($fecha, $meses) { list($anio, $mes, $dia) = explode('-', $fecha); if ($mes + $meses > 12) { $sumarMeses = (intval(($mes + $meses) % 12)); $sumarAnys = intval(($mes + $meses) / 12); $mes = $sumarMeses; /* -- No se suma */ $anio += $sumarAnys; } else { $mes += $meses; $anio += 0; } return $anio . '-' . substr('00'.$mes, -2 ) . '-' . substr('00'.$dia, -2 ); } }