Sie können Ihr where
verketten s direkt, ohne function(q)
. Es gibt auch ein nettes Paket zur Handhabung von Daten in Laravel namens Carbon
. Sie könnten also so etwas tun:
$projects = Project::where('recur_at', '>', Carbon::now())
->where('recur_at', '<', Carbon::now()->addWeek())
->where('status', '<', 5)
->where('recur_cancelled', '=', 0)
->get();
Stellen Sie einfach sicher, dass Sie Carbon in Composer benötigen und dass Sie den Carbon-Namespace verwenden (benutzen Sie Carbon\Carbon;) und es sollte funktionieren.
BEARBEITEN:Wie Joel sagte , könnten Sie Folgendes tun:
$projects = Project::whereBetween('recur_at', array(Carbon::now(), Carbon::now()->addWeek()))
->where('status', '<', 5)
->where('recur_cancelled', '=', 0)
->get();