Heim  >  Artikel  >  Backend-Entwicklung  >  So sortieren Sie ein mehrdimensionales Array nach Schlüssel: Eine Schritt-für-Schritt-Lösung?

So sortieren Sie ein mehrdimensionales Array nach Schlüssel: Eine Schritt-für-Schritt-Lösung?

Barbara Streisand
Barbara StreisandOriginal
2024-10-20 19:02:02587Durchsuche

How to Sort a Multidimensional Array by Key: A Step-by-Step Solution?

Sortieren eines mehrdimensionalen Arrays nach Schlüssel: Eine umfassende Anleitung

Das Anordnen der Elemente eines mehrdimensionalen Arrays in einer bestimmten Reihenfolge kann eine häufige Anforderung sein im Programmieren. Das Sortieren nach einem bestimmten Schlüssel bietet eine effiziente Möglichkeit, Daten zu organisieren und abzurufen.

Betrachten Sie das folgende mehrdimensionale Array mit Einladungen:

Array (
[0] => Array
    (
        [iid] => 1
        [invitee] => 174
        [nid] => 324343
        [showtime] => 2010-05-09 15:15:00
        [location] => 13
        [status] => 1
        [created] => 2010-05-09 15:05:00
        [updated] => 2010-05-09 16:24:00
    )

[1] => Array
    (
        [iid] => 1
        [invitee] => 220
        [nid] => 21232
        [showtime] => 2010-05-09 15:15:00
        [location] => 12
        [status] => 0
        [created] => 2010-05-10 18:11:00
        [updated] => 2010-05-10 18:11:00
    ))

Um dieses Array nach dem Schlüssel „Status“ zu sortieren, haben wir kann die Funktion usort() und eine benutzerdefinierte Vergleichsfunktion verwenden.

Benutzerdefinierte Vergleichsfunktion

Die Vergleichsfunktion bestimmt die Reihenfolge der Elemente durch Vergleich ihrer Schlüssel. Hier ist eine Funktion, die einen Vergleich basierend auf dem „Status“-Schlüssel durchführt:

function cmp($a, $b) {
    if ($a['status'] == $b['status']) {
        return 0;
    }
    return ($a['status'] < $b['status']) ? -1 : 1;
}

Diese Funktion gibt -1 zurück, wenn $a vor $b kommen sollte, 1, wenn $a nach $b kommen sollte, und 0, wenn sie sind gleich.

Sortieren des Arrays

Wir können das Array jetzt mit usort() sortieren:

usort($array, "cmp");

Dadurch wird das Array sortiert nach die Taste „Status“ in aufsteigender Reihenfolge. Wenn wir die Reihenfolge umkehren möchten, können wir rsort() verwenden:

rsort($array, "cmp");

Durch die Nutzung der bereitgestellten Vergleichsfunktion und Sortierfunktionen können wir mehrdimensionale Arrays mühelos nach jedem gewünschten Schlüssel sortieren.

Das obige ist der detaillierte Inhalt vonSo sortieren Sie ein mehrdimensionales Array nach Schlüssel: Eine Schritt-für-Schritt-Lösung?. 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