Heim >Backend-Entwicklung >PHP-Tutorial >Wie rufe ich Datensätze innerhalb eines bestimmten Datumsbereichs mit dem Eloquent ORM von Laravel ab?

Wie rufe ich Datensätze innerhalb eines bestimmten Datumsbereichs mit dem Eloquent ORM von Laravel ab?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-08 07:49:13682Durchsuche

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

Abrufen von Datensätzen basierend auf einem Datumsbereich mit Laravel

Um Datensätze abzurufen, die in einen bestimmten Datumsbereich fallen, stellt Laravel's Eloquent ORM das WhereBetween bereit Verfahren. Mit dieser Methode können Sie einen Spaltennamen und ein Array aus zwei Datumsangaben angeben, die den Start- und Endpunkt des gewünschten Bereichs darstellen.

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

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

Diese Abfrage ruft alle Reservierungen ab, bei denen der Wert der Spalte „reservation_from“ zwischen Januar liegt 1. 2018 und 2. Mai 2018.

Dynamikbereich Parameter

Sie können das Start- und Enddatum des Bereichs auch dynamisch definieren, indem Sie die Zwischenmethode von Carbon verwenden:

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

Zusätzliche Abfragen

  • whereOrBetween: Gibt einen zusätzlichen Datumsbereich an Bedingung.
  • whereNotBetween: Schließt ein bestimmtes Datumsintervall aus.

Beispiel:

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

Andere Where-Klauseln

Für weitere Flexibilität bietet Laravel zusätzliche WHERE-Klauseln an, einschließlich:

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

Das obige ist der detaillierte Inhalt vonWie rufe ich Datensätze innerhalb eines bestimmten Datumsbereichs mit dem Eloquent ORM von Laravel ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn