How can I get the last day of the month in PHP?
$a_date = "2009-11-23"
I want 2009-11-30; and given
$a_date = "2009-12-23"
I want 2009-12-31.
t returns the number of days in the month of a given date (see the docs for
$a_date = "2009-11-23"; echo date("Y-m-t", strtotime($a_date));
The code using strtotime() will fail after year 2038. (as given in the first answer in this thread) For example try using the following:
$a_date = "2040-11-23"; echo date("Y-m-t", strtotime($a_date));
It will give answer as: 1970-01-31
So instead of strtotime, DateTime function should be used. Following code will work without Year 2038 problem:
$d = new DateTime( '2040-11-23' ); echo $d->format( 'Y-m-t' );