Ответ 1
Функция php date дает вам количество дней в месяце с 't'
date("t");
Возможный дубликат:
PHP в последний день месяца
Есть ли какая-либо функция типа $date->getMonthDays()
или $date->getLastDayOfMonth()
в PHP, чтобы получить количество дней в данном месяце (или номер последнего дня)?
$start = new DateTime('2012-02-01');
$end = clone $start;
// Interval = last day of the month minus current day in $start
$interval = $start->getLastDayOfMonth() - intval($start->format('j'));
$end->add(new DateInterval('P' . $interval . 'D'));
EDIT: спасибо, проголосовали за закрытие, это дубликат, извините за вопрос...
Функция php date дает вам количество дней в месяце с 't'
date("t");
Проще получить дату последнего месяца
echo date("Y-m-t", strtotime("-1 month") ) ;
echo date("Y-m-1", strtotime("-1 month") ) ;
3 марта возвращает
2011-02-28
2011-02-1
t
дает общее количество дней в текущем месяце. j
дает текущий день месяца.
Используя modify
и некоторое вычитание из format
-вдача datetime, вы можете добраться до конца месяца.
$date = new DateTime();
$lastDayOfMonth = $date->modify(
sprintf('+%d days', $date->format('t') - $date->format('j'))
);