Как получить определенные дни недели в периоде дат?
Всем доброго дня.
Подскажите как реализовать по компактнее.
Мне нужно в периоде например с 11-07-2016 по 31-07-2016 выбрать даты всех, например понедельников.
Результат к примеру будет таким 11-07-2016, 18-07-2016, 25-07-2016.
Если условие выбора динамичное, то просто перебрать все даты из диапазона и проверять на конкретное условие.
Если понедельники, то находим первый понедельник из диапазона, пушим дату через неделю пока не выйдем из ренджа.
Используй метод класса Datetime - format(), чтобы смотреть конкретные параметры даты.
Для правильного вопроса надо знать половину ответа
1. Получить день недели начальной даты.
2. Если это не понедельник, то посчитать смещение до понедельника в днях, прибавить смещение к начальной дате.
3. От начальной даты с шагом в 7 дней пройти до конечной даты.