Добрый день. Подскажите такой вопрос.
Я делаю через выборку new selector('objects'); Выбираю объекты с фильтрацией по полю дата-время.
К примеру для выбора "завтрашних" записей я делаю выборку:
$schedule->where('event_date')->eqmore(strtotime('+1 day', time()));
$schedule->where('event_date')->eqless(strtotime('+2 day', time()));
Т.е. между двумя датами.
Вопрос, а как можно сделать выборку ближайших выходных.
Сейчас я делаю путем перебора всех имеющихся записей и помещаю их в массив и потом фильтрую сортирую по типу дня недели и т.п. Может как то можно это сделать прям в выборке UMI.Selector, а то выполнение скрипта увеличивается
Не очень понимаю как эта задача относится к UMI, но ладно. Алгоритм такой:
1. Определяете дату ближайших выходных
2. Подставляете эту дату в свой селектор
PS: date("N") возвращает число дня недели, 1 - понедельник ... 7 - воскресенье
//ближайшее воскресенье
$d = mktime(0, 0, 0, date("m"), date("d") + 7 - date("N"), date("Y"));
echo date('Y-m-d', $d);