Sortieren mehrdimensionaler Arrays nach dem inneren Array-Feld in PHP [Duplikat]
Stellen Sie sich ein mehrdimensionales Array vor, das eine datenbankähnliche Struktur darstellt, in der jedes Element enthalten ist bezeichnet eine Zeile mit inneren Arrays, die Feldname-Wert-Paare enthalten. Zum Beispiel:
Array ( [0] => Array ( [name] => 'Sony TV' [price] => 600.00 ) [1] => Array ( [name] => 'LG TV' [price] => 350.00 ) [2] => Array ( [name] => 'Samsung TV' [price] => 425.00 ) }
Das Ziel besteht darin, diese Zeilen basierend auf dem Feld „Preis“ zu sortieren. Das gewünschte Ergebnis ist:
Array ( [0] => Array ( [name] => 'LG TV' [price] => 350.00 ) [1] => Array ( [name] => 'Samsung TV' [price] => 425.00 ) [2] => Array ( [name] => 'Sony TV' [price] => 600.00 ) }
Lösung:
Um diese Sortierung zu erreichen, bietet PHP die folgende einfache Lösung:
array_multisort(array_column($yourArray, "price"), SORT_ASC, $yourArray);
Alternativ , kann das folgende Snippet verwendet werden, um äußere Array-Schlüssel beizubehalten:
$col = array_column($yourArray, "price"); array_multisort($col, SORT_ASC, SORT_NUMERIC, $yourArray);
Das obige ist der detaillierte Inhalt vonWie sortiere ich ein mehrdimensionales Array in PHP nach dem Feld eines inneren Arrays?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!