Как сгенерировать DateTime интервалы между двумя датами?

Уважаемые коллеги по ремеслу. Подскажите пожалуйста каким образом можно получить даты за определенный промежуток ?

У меня есть DatePiker в нем выставляются две даты. Например такого рода:
2016-04-21
2016-05-21
Есть апи, который по запросу на одну дату возвращает 1 JSON объект.

Я хотел получить весь список дат, но не знаю как это реализовать обычным итератором i++ в число не подойдет т.к. дней может быть 28 или 30/31. В мыслях было что конвертировать в UNIX и докидывать дней до тех пор пока итерируемое не станет финальным. Потом этот массив конвертировать в нужный вид даты и отправлять в апи.

Как получить интервальные даты?
  • Вопрос задан
  • 280 просмотров
Решения вопроса 1
@iznaur
есть такая конструкция date->modify('+1 day') т.е если тебе нужно 30 дней:
for($i = 0; $i < 30; $i++) {
    $dates[] = $date->format('d.m.y');
    $date->modify('+1 day');
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ExileeD
@ExileeD
PHP/Python developer
$begin = new DateTime( );
$end   = new DateTime();
$end->modify( '+1 month' );

$interval = DateInterval::createFromDateString( '1 day' );
$period   = new DatePeriod( $begin, $interval, $end );
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы