Heim >Backend-Entwicklung >PHP-Tutorial >Wie erhalte ich alle Daten zwischen zwei Daten in einem PHP-Array?

Wie erhalte ich alle Daten zwischen zwei Daten in einem PHP-Array?

Susan Sarandon
Susan SarandonOriginal
2024-12-23 04:02:14613Durchsuche

How to Get All Dates Between Two Dates in a PHP Array?

PHP: Alle Daten zwischen zwei Daten in einem Array zurückgeben

Bei zwei Daten besteht eine häufige Aufgabe darin, alle Daten innerhalb dieses Bereichs abzurufen . Dies kann durch verschiedene Ansätze in PHP erreicht werden.

Methode 1: Schleife verwenden

Die einfachste Lösung besteht darin, eine Schleife zu verwenden, um jeden Tag innerhalb des angegebenen Bereichs zu durchlaufen . Hier ist ein Beispiel:

<?php
function getDatesFromRange($start_date, $end_date) {
    $dates = array();

    $start = new DateTime($start_date);
    $end   = new DateTime($end_date);
    $end->add(new DateInterval('P1D'));

    $temp = $start;
    while ($temp <= $end) {
        $dates[] = $temp->format('Y-m-d');
        $temp->add(new DateInterval('P1D'));
    }

    return $dates;
}

Methode 2: Verwendung der DatePeriod-Klasse

PHP stellt auch die DatePeriod-Klasse für die Handhabung von Datumsbereichen bereit. So können Sie es verwenden:

<?php
function getDatesFromRange($start_date, $end_date) {
    $period = new DatePeriod(
        new DateTime($start_date),
        new DateInterval('P1D'),
        new DateTime($end_date)
    );

    $dates = array();
    foreach ($period as $date) {
        $dates[] = $date->format('Y-m-d');
    }

    return $dates;
}

Ausgabe

Beide Methoden geben ein Array von Datumsangaben innerhalb des angegebenen Bereichs zurück, wie in der erwarteten Ausgabe gezeigt:

Array( '2010-10-01', '2010-10-02', '2010-10-03', '2010-10-04', '2010-10-05' )

Das obige ist der detaillierte Inhalt vonWie erhalte ich alle Daten zwischen zwei Daten in einem PHP-Array?. 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