negmat
@negmat

Получить ближайший день недели?

Здравствуйте.

Я храню в базе данных, дни недели в строке (тип set) - от 1 до 7 (ПН - ВС).
У записей может быть выбрано хоть все дни, или некоторые выборочно.

Подскажите пожалуйста, как мне учитывая текущий день недели выбрать самый скорый и получить его дату?
Вот пример: запись содержит "1,2" - то есть ПН, ВТ, сегодня пятница, предположим. Значит мне нужно получить дату ближайшего понедельника.
Я сделал конструкцию, но она как то сильно нагружена, может возможно сделать проще.
  • Вопрос задан
  • 451 просмотр
Пригласить эксперта
Ответы на вопрос 1
1. Найти позицию текущего дня в массиве дней из 7ми элементов (напр., среда - 3)
2. Найти позицию требуемого (напр., понедельник - 1)
3. Вычислить разницу (напр., 7 - 3= 4)
4. Получить текущую дату + (n + 1) дней (напр., текущую дату + (4 + 1) дня)
5. Profit
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы