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