Maison >développement back-end >tutoriel php >Comment récupérer des enregistrements dans une plage de dates spécifique à l'aide de l'ORM éloquent de Laravel ?

Comment récupérer des enregistrements dans une plage de dates spécifique à l'aide de l'ORM éloquent de Laravel ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-08 07:49:13680parcourir

How to Retrieve Records Within a Specific Date Range Using Laravel's Eloquent ORM?

Récupération d'enregistrements basés sur une plage de dates à l'aide de Laravel

Pour récupérer des enregistrements qui se situent dans une plage de dates spécifiée, l'ORM éloquent de Laravel fournit l'endroit où entre méthode. Cette méthode vous permet de spécifier un nom de colonne et un tableau de deux dates, représentant les points de début et de fin de la plage souhaitée.

$from = date('2018-01-01');
$to = date('2018-05-02');

Reservation::whereBetween('reservation_from', [$from, $to])
    ->get();

Cette requête récupérera toutes les réservations pour lesquelles la valeur de la colonne booking_from se situe entre janvier 1er 2018 et 2 mai 2018.

Gamme dynamique Paramètres

Vous pouvez également définir dynamiquement les dates de début et de fin de la plage à l'aide de la méthode Between de Carbon :

Reservation::all()
    ->filter(function($item) {
        if (Carbon::now()->between($item->from, $item->to)) {
            return $item;
        }
    });

Requêtes supplémentaires

  • whereOrBetween : spécifie une plage de dates supplémentaire condition.
  • whereNotBetween : exclut un intervalle de dates spécifique.

Exemple :

Reservation::whereBetween('reservation_from', [$from1, $to1])
    ->orWhereBetween('reservation_to', [$from2, $to2])
    ->whereNotBetween('reservation_to', [$from3, $to3])
    ->get();

Autres clauses Where

Pour plus de flexibilité, Laravel propose des clauses WHERE supplémentaires, notamment :

  • whereIn
  • whereNotIn
  • whereNull
  • whereNotNull
  • whereDate
  • whereM onth
  • whereDay
  • whereYear
  • whereTime
  • whereColumn
  • whereExists
  • whereRaw

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn