У меня есть «событие», которое должно быть запланировано на один и тот же день каждого месяца.
Скажем, вы установили дату начала 1 мая, вы должны получить следующие события 1 июня, 1 июля и т. Д. Проблема связана с датой начала 31 мая (следующие могут быть 30 или 28 в зависимости от месяц).
Учитывая, что есть месяцы с разным количеством дней (28, 30, 31) в зависимости от самого месяца и года ... что было бы простым способом установить это?
Рассмотрим следующую (и ошибочную) функцию nextmonth:
$events = array()
function nextmonth($date) {
return $date+(60*60*24*30);
}
$curr = $start;
while($curr < $end) {
$events[ = $curr;
$curr = nextmonth($curr);
}
Отредактировано, чтобы добавить: Для меня проблема, достаточно просто, как решить, каково количество дней в любом данном месяце и таким образом получить следующую соответствующую дату.