Такой вопрос, есть дата, например 2020-06-15. Нужно добавить по одному месяцу на год вперед, а также изменить число на последний день месяца. То есть в итоге должно получится:
2020-06-15 (первая дата)
2020-07-31 (в июле 31 день)
2020-08-31 (в августе 31 день)
2020-09-30 (в сентябре 30 дней)
2020-10-31 (в октябре 31 день)
и так далее до июля 22 года.
Пробую так:
//
foreach ($getDates as $getDate) {
# предположим что в getDate лежит - 2020-06-15
$firstDate = new \DateTime($getDate);
$datesArr[] = $firstDate->format('Y-m-d');
for ($i = 1; $i <= 12; $i++) {
$date = new \DateTime($getDate);
$month = $date->format('F');
$year = $date->format('Y');
$date->modify("+$i month");
# до этого момента все хорошо, прибавляется по одному мес на год вперед
$date->modify("last day of $month $year");
# здесь уже все ломается, хотя в доке указано "last day of July 2008"
$datesArr[] = $date->format('Y-m-d');
}
}
но это не совсем корректно работает. после строчки
modify("last day of $month $year"); подскажите как поправить?