Фильтрация данных по текущей дате часто требует передачи
now() в запросы, что может выглядеть громоздко. Особенно при сложных условиях, объединяющих прошлое и будущее.В Laravel существуют элегантные методы
whereDate(), whereNowOrPast() и whereFuture(), которые упрощают такие запросы. whereNowOrPast выбирает записи с датой в прошлом или настоящем, а whereFuture — только с датой в будущем. Это делает код более читаемым и декларативным.<?php
use App\Models\Event;
// Задача: получить все прошедшие и будущие события отдельно.
// Стандартный подход:
$pastEvents = Event::where('starts_at', '<=', now())->get();
$futureEvents = Event::where('starts_at', '>', now())->get();
// Подход с новыми методами:
$pastEventsClean = Event::whereNowOrPast('starts_at')->get();
$futureEventsClean = Event::whereFuture('starts_at')->get();
👉 @web_craft | #laravel
