如何在PHP中获得每月的最后一天?
考虑到:
$a_date = "2009-11-23"
我想要2009-11-30;鉴于
$a_date = "2009-12-23"
我要2009-12-31。
如何在PHP中获得每月的最后一天?
考虑到:
$a_date = "2009-11-23"
我想要2009-11-30;鉴于
$a_date = "2009-12-23"
我要2009-12-31。
当前回答
我在这里将它包装在我的日期时间助手类中 https://github.com/normandqq/Date-Time-Helper 使用 $dateLastDay = Model_DTHpr::getLastDayOfTheMonth();
完成了
其他回答
T返回给定日期当月的天数(date参见文档):
$a_date = "2009-11-23";
echo date("Y-m-t", strtotime($a_date));
如果您使用的是32位系统,那么由于2038年问题,strtotime()代码将在2038年之后失败。
例如,在32位系统上,此代码将回显1970-01-31:
$a_date = "2040-11-23";
echo date("Y-m-t", strtotime($a_date));
如果你需要你的代码支持32位系统,那么你应该使用DateTime函数:
$d = new DateTime('2040-11-23');
echo $d->format('Y-m-t');
该代码将在32位或64位系统上正确地输出2040-11-30。
使用Zend_Date非常简单:
$date->setDay($date->get(Zend_Date::MONTH_DAYS));
你的解决方案在这里。
$lastday = date('t',strtotime('today'));
我需要下个月的最后一天,也许有人会需要它:
echo date("Y-m-t", strtotime("next month")); //is 2020-08-13, return 2020-09-30