Задать вопрос
negmat
@negmat

Как получить определенные дни недели в периоде дат?

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

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

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