Heim > Backend-Entwicklung > PHP-Tutorial > Wie sortiere ich ein mehrdimensionales PHP-Array nach einem Datetime-Element?

Wie sortiere ich ein mehrdimensionales PHP-Array nach einem Datetime-Element?

DDD
Freigeben: 2024-12-16 15:10:21
Original
430 Leute haben es durchsucht

How to Sort a Multidimensional PHP Array by a Datetime Element?

Sortieren mehrdimensionaler Arrays nach Datumselement in PHP

Betrachten Sie ein Array mit einer Struktur ähnlich der folgenden:

$array = [
    [
        'id' => 2,
        'type' => 'comment',
        'text' => 'hey',
        'datetime' => '2010-05-15 11:29:45',
    ],
    [
        'id' => 3,
        'type' => 'status',
        'text' => 'oi',
        'datetime' => '2010-05-26 15:59:53',
    ],
    [
        'id' => 4,
        'type' => 'status',
        'text' => 'yeww',
        'datetime' => '2010-05-26 16:04:24',
    ],
];
Nach dem Login kopieren

Wie können wir Dieses Array nach dem Element „datetime“ sortieren?

Usort() mit einem benutzerdefinierten Vergleich verwenden Funktion

Die Funktion usort() von PHP benötigt ein Array und eine Vergleichsfunktion, die die Reihenfolge der Elemente bestimmt. Wir können eine benutzerdefinierte Vergleichsfunktion namens date_compare wie folgt erstellen:

function date_compare($a, $b)
{
    $t1 = strtotime($a['datetime']);
    $t2 = strtotime($b['datetime']);
    return $t1 - $t2;
}
Nach dem Login kopieren

Diese Funktion extrahiert den UNIX-Zeitstempel für das Feld „datetime“ jedes Datensatzes und gibt die Differenz zwischen ihnen zurück. Diese Informationen werden von usort() verwendet, um das Array zu sortieren.

Anwenden der Sortierfunktion

Schließlich können wir die Sortierfunktion mit usort() auf das Array anwenden:

usort($array, 'date_compare');
Nach dem Login kopieren

Dadurch wird das Array in aufsteigender Reihenfolge basierend auf dem Element „datetime“ sortiert.

Das obige ist der detaillierte Inhalt vonWie sortiere ich ein mehrdimensionales PHP-Array nach einem Datetime-Element?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage