как к конкретным датам, так и к целому периоду. Соответственно, в процессе работы компонента нужно будет проверять попадает ли текущая дата в период или равна ли она одной из выбранных дат. Какие варианты реализации этого вы можете предложить?
Я бы записал период в виде массива дат конкретных
Да я тоже об этом подумал. Но ведь период может быть любым и год, и два. Насколько ресурсоемко гонять цикл по такому количеству значений... Хотя не цикл конечно, а in_array()
Ну там не будет же 365 дат, как я понял, в массиве будут несколько дат, а если в течение всего периода будет два года , тогда будет массив из двух дат, startdate - enddate
[start, промежуточные даты...,end]
в таблице дата от и дата до. если конкретная дата, то они равны. $dateFrom = date('Y-m-d 00:00:00', $c['dates'][0]); $dateTo = date('Y-m-d 23:59:59', $c['dates'][1]); $where[] = "date > '$dateFrom'"; $where[] = "date < '$dateTo'";
Не верное условие, тут нужны поверки промежуточных дат, да и в твоём запросе есть косяк , начальная дата и конечная отсекаются я бы использовал BETWEEN
А время важно? или исключительно дата без времени?
Со временем. Я думаю буду записывать всё интервалами, т.е. дата 00:00 - дата 23:59,
00? Ещё раз спрошу. Время в дате необходимо? Те это начало мероприятия или запуск чего то?
Те может быть дата на подобии: 11 января 15.00 до 13 января 12 часов?
Предлагаю отдельную таблицу с датами в 3 столбца. Ид, дата начала, дата конца. Фильтровать по такой таблице теоретически удобно должно быть. Ну и соответственно для одного ресурса мульти даты этой таблицы, кстати, при необходимости, 4ое поле в зависимости от концепции, делать - ид ресурса.
а почему просто не сделать ид сразу ид ресурса, он уникальный, и соответствие это уникальное, 1 ресурс - 2 даты обязательно
Я так понял к 1 ресу несколько дат может быть.
Обсуждают сегодня