Heim > Backend-Entwicklung > PHP-Tutorial > Wie sortiere ich ein mehrdimensionales PHP-Array nach inneren Array-Werten?

Wie sortiere ich ein mehrdimensionales PHP-Array nach inneren Array-Werten?

DDD
Freigeben: 2024-11-03 02:01:29
Original
605 Leute haben es durchsucht

How to Sort a Multi-Dimensional PHP Array by Inner Array Values?

Mehrdimensionale PHP-Arrays nach inneren Array-Werten sortieren

Das Sortieren mehrdimensionaler Arrays in PHP ist eine häufige Aufgabe in der Datenverarbeitung und kann Dies kann eine Herausforderung darstellen, wenn das Sortierkriterium in einem verschachtelten Array liegt. In diesem Artikel untersuchen wir, wie man ein PHP-Array basierend auf einem bestimmten Wert innerhalb des inneren Arrays, insbesondere dem „Name“-Schlüssel, sortiert.

Um dieser Herausforderung zu begegnen, werden wir eine benutzerdefinierte Sortierfunktion namens array_sort einführen . Diese Funktion benötigt ein Eingabearray, den Schlüssel zum Sortieren und eine optionale Sortierreihenfolge (aufsteigend oder absteigend).

Die Funktion array_sort erstellt zunächst neue Arrays für die Sortierung und die sortierten Ergebnisse. Es durchläuft das Eingabearray und extrahiert die angegebenen Schlüssel-Wert-Paare in das Sortierarray. Anschließend wendet sie den entsprechenden Sortieralgorithmus (asort für aufsteigend oder arsort für absteigend) auf das Sortierarray an.

Schließlich rekonstruiert die Funktion das sortierte Array, indem sie die ursprünglichen Array-Werte den neu sortierten Schlüsseln zuweist. Das resultierende Array wird basierend auf dem angegebenen inneren Array-Schlüssel sortiert.

Verwendung:

Um die Funktion array_sort zu verwenden, können Sie die folgenden Schritte ausführen:

  1. Rufen Sie die Funktion array_sort mit dem Eingabearray, dem Schlüssel zum Sortieren und der gewünschten Sortierreihenfolge auf (optional).
  2. Speichern Sie das sortierte Array in einer neuen Variablen.
  3. Auf das sortierte Array kann jetzt über die neue Variable zugegriffen werden.

Beispiel :

Betrachten Sie das folgende Eingabearray:

$list = [
    ['type' => 'suite', 'name' => 'A-Name'],
    ['type' => 'suite', 'name' => 'C-Name'],
    ['type' => 'suite', 'name' => 'B-Name'],
];
Nach dem Login kopieren

Um das Array zu sortieren Alphabetisch nach dem Namensschlüssel würden Sie Folgendes verwenden:

$sortedList = array_sort($list, 'name', SORT_ASC);
Nach dem Login kopieren

Das resultierende $sortedList-Array wird wie folgt sortiert:

[
    ['type' => 'suite', 'name' => 'A-Name'],
    ['type' => 'suite', 'name' => 'B-Name'],
    ['type' => 'suite', 'name' => 'C-Name'],
]
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie sortiere ich ein mehrdimensionales PHP-Array nach inneren Array-Werten?. 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