sql >> Database >  >> RDS >> Mysql

Laravel $q->where() tussen datums

U kunt uw where chain koppelen s direct, zonder function(q) . Er is ook een leuk date-afhandelingspakket in laravel, genaamd Carbon . Je zou dus iets kunnen doen als:

$projects = Project::where('recur_at', '>', Carbon::now())
    ->where('recur_at', '<', Carbon::now()->addWeek())
    ->where('status', '<', 5)
    ->where('recur_cancelled', '=', 0)
    ->get();

Zorg er wel voor dat je Carbon in Composer nodig hebt en dat je Carbon-naamruimte gebruikt (gebruik Carbon\Carbon;) en het zou moeten werken.

EDIT:Zoals Joel zei , je zou kunnen doen:

$projects = Project::whereBetween('recur_at', array(Carbon::now(), Carbon::now()->addWeek()))
    ->where('status', '<', 5)
    ->where('recur_cancelled', '=', 0)
    ->get();


  1. Prestatiebewaking voor TimescaleDB

  2. Krijg waarden van de eerste en laatste rij per groep

  3. mysql_fetch_assoc():opgegeven argument is geen geldige MySQL-resultaatbron in php

  4. DATETIME VS INT voor het opslaan van tijd?