Cómo obtener el último día del mes con las funciones PHP

Dennis Kithinji 13 abril 2021
Cómo obtener el último día del mes con las funciones PHP

PHP ya tiene incorporadas funciones que ayudarán a obtener la última fecha de un mes determinado. Las funciones DateTime y strtotime son muy útiles en este escenario, aunque es bien sabido y documentado que strtotime no funcionará con precisión ni dará resultados correctos después del año 2038. Sin embargo, el strtotime es genial para convertir fechas.

Ambas funciones utilizan el formato t que, según el manual oficial, devuelve el número de días del mes de una fecha determinada. Nota: la clave para obtener el último día del mes es la letra t que devuelve el número de días de un mes determinado.

PHP DateTime para obtener la última fecha del mes

Es el mejor método para obtener la última fecha de un mes con fechas futuras y pasadas. Los parámetros que se pasan en la función format() son - Y, m y t. Estas constantes están definidas en PHP.

Una representación numérica completa de un año, 4 dígitos se representa con la letra Y, por ejemplo, 2020. La representación numérica de un mes, con ceros a la izquierda, es con la letra m, es decir, del 01 al 12. Y el número de días del mes se representa con la letra t.

Esta es la mejor opción si la versión PHP usada está después de 5.3.

$L = new DateTime( '2020-02-01' ); 
echo $L->format( 'Y-m-t' );

El código de arriba suministra a la función DateTime una fecha y utiliza los caracteres de formato Y-m-t para obtener la última fecha del mes en la fecha suministrada.

PHP strtotime() para obtener la última fecha del mes

strtotime() es la mejor opción para la versión de PHP anterior a la 5.2.

$date = "2020-01-15";
echo date("Y-m-t", strtotime($date));

Artículo relacionado - PHP DateTime