Maison >développement back-end >tutoriel php >Comment interroger des données entre deux dates à l'aide de Laravel Eloquent ?

Comment interroger des données entre deux dates à l'aide de Laravel Eloquent ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-17 21:09:15857parcourir

How to Query Data Between Two Dates Using Laravel Eloquent?

Comment interroger entre deux dates à l'aide de Laravel et Eloquent ?

Vous pouvez utiliser la méthode WhereBetween d'Eloquent pour interroger entre deux dates. Cette méthode prend un tableau de deux valeurs comme arguments, où la première valeur est la date de début et la deuxième valeur est la date de fin. Par exemple :

<?php

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

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

Cette requête sélectionnera toutes les réservations dont la colonne booking_from se situe entre la date de début et la date de fin.

Plage de dates dynamique

Vous pouvez également ajoutez la plage de dates de manière dynamique à l'aide de la méthode de filtrage. Par exemple :

<?php

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

Conditions multiples

Vous pouvez utiliser plusieurs conditions en enchaînant les méthodes Where. Par exemple :

<?php

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

Autres clauses Where utiles

Laravel Eloquent fournit d'autres clauses Where utiles, y compris :

  • whereIn
  • whereNotIn
  • whereNull
  • whereNotNull
  • whereDate
  • whereMont h
  • whereDay
  • whereYear
  • whereTime
  • whereColumn
  • whereExists
  • whereRaw

Pour plus d'informations, reportez-vous à la documentation Laravel sur [Where Clauses](https://laravel.com/docs/eloquent/queries) et [whereBetween](https://laravel.com/docs/eloquent/queries#where-clauses ).

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