Wie sortiere ich ein PHP-Array nach mehreren Feldern?
Nov 22, 2024 am 10:18 AMPHP: Sortieren eines Arrays nach mehreren Feldwerten
Frage:
Wie kann ich ein Array in PHP nach sortieren? zwei oder mehr Feldwerte, ähnlich der Verwendung der „ORDER BY“-Klausel in SQL?
Beispiel Array:
$data = [ [ "destination" => "Sydney", "airlines" => "airline_1", "one_way_fare" => 100, "return_fare" => 300 ], [ "destination" => "Sydney", "airlines" => "airline_2", "one_way_fare" => 150, "return_fare" => 350 ], [ "destination" => "Sydney", "airlines" => "airline_3", "one_way_fare" => 180, "return_fare" => 380 ] ];
Gewünschte Sortierung:
Sortieren Sie das Array in aufsteigender Reihenfolge nach „return_fare“ und dann in aufsteigender Reihenfolge nach „one_way_fare“.
Antwort:
Das Richtige Die PHP-Funktion zum Sortieren eines Arrays nach mehreren Feldwerten ist array_multisort(). Hier ist ein Beispiel, wie Sie die gewünschte Sortierung erreichen:
// Extract the relevant columns $return_fare = array_column($data, 'return_fare'); $one_way_fare = array_column($data, 'one_way_fare'); // Sort the array array_multisort($return_fare, SORT_ASC, $one_way_fare, SORT_ASC, $data);
Vereinfachte Verwendung mit array_orderby()
Sie können den Code mit der Funktion array_orderby() von vereinfachen PHP-Handbuch:
$sorted = array_orderby($data, 'return_fare', SORT_ASC, 'one_way_fare', SORT_ASC);
Array mit Arrays (Loops vs. array_column())
Wenn Ihr Array Arrays enthält, können Sie eine Schleife verwenden, um die relevanten Werte vor dem Sortieren zu extrahieren:
$return_fare = []; $one_way_fare = []; foreach ($data as $row) { $return_fare[] = $row['return_fare']; $one_way_fare[] = $row['one_way_fare']; }
Oder, wenn Sie PHP 5.5 oder höher verwenden, Sie können array_column():
array_multisort(array_column($data, 'return_fare'), SORT_ASC, array_column($data, 'one_way_fare'), SORT_ASC, $data);
Das obige ist der detaillierte Inhalt vonWie sortiere ich ein PHP-Array nach mehreren Feldern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

11 beste PHP -URL -Shortener -Skripte (kostenlos und Premium)

Arbeiten mit Flash -Sitzungsdaten in Laravel

Vereinfachte HTTP -Reaktion verspottet in Laravel -Tests

Erstellen Sie eine React -App mit einem Laravel -Back -Ende: Teil 2, reagieren

Curl in PHP: So verwenden Sie die PHP -Curl -Erweiterung in REST -APIs

12 Beste PHP -Chat -Skripte auf Codecanyon
