In PHP kann das Sortieren eines Arrays mit verschiedenen integrierten Funktionen erreicht werden. Schauen wir uns an, wie Sie ein einfaches Array sortieren können.
Sortieren eines einfachen numerischen Arrays:
Um ein einfaches numerisches Array in aufsteigender Reihenfolge zu sortieren, können Sie die Funktion sort()
verwenden. Hier ist ein Beispiel:
<code class="php">$numbers = array(4, 2, 8, 6, 1); sort($numbers); print_r($numbers);</code>
Dies wird ausgeben:
<code>Array ( [0] => 1 [1] => 2 [2] => 4 [3] => 6 [4] => 8 )</code>
Sortieren eines einfachen assoziativen Arrays:
Bei assoziativen Arrays können Sie die Funktion asort()
verwenden, um die Schlüsselwertverbände beizubehalten, während Sie nach Wert sortiert werden. Hier ist ein Beispiel:
<code class="php">$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple"); asort($fruits); print_r($fruits);</code>
Dies wird ausgeben:
<code>Array ( [c] => apple [b] => banana [d] => lemon [a] => orange )</code>
PHP bietet mehrere Funktionen, um Arrays basierend auf verschiedenen Kriterien zu sortieren. Unten finden Sie eine Liste der Hauptsortierfunktionen:
Sort () : Sortiert ein Array in aufsteigender Reihenfolge und setzt die Schlüssel ab 0 auf einen kontinuierlichen numerischen Index zurück.
<code class="php">sort($array);</code>
RSORT () : Sortiert ein Array in absteigender Reihenfolge und setzt die Schlüssel ab 0 auf einen kontinuierlichen numerischen Index zurück.
<code class="php">rsort($array);</code>
ASORT () : Sortiert ein Array in aufsteigender Reihenfolge, wobei der Indexverband aufrechterhalten wird.
<code class="php">asort($array);</code>
ARSORT () : Sortiert ein Array in absteigender Reihenfolge, wobei der Indexverband aufrechterhalten wird.
<code class="php">arsort($array);</code>
KSORT () : Sortiert ein Array nach Schlüssel in aufsteigender Reihenfolge.
<code class="php">ksort($array);</code>
krsort () : sortiert ein Array nach Schlüssel in absteigender Reihenfolge.
<code class="php">krsort($array);</code>
Natsort () : Sortiert ein Array mit einem "natürlichen Order" -Algorithmus, der zum Sortieren von Zeichenfolgen nützlich ist.
<code class="php">natsort($array);</code>
NatcaseSort () : Sortiert ein Array mit einem von Fall unempfindlichen "natürlichen Ordnung" -Algorithmus.
<code class="php">natcasesort($array);</code>
usort () : sortiert ein Array nach einer benutzerdefinierten Vergleichsfunktion.
<code class="php">usort($array, 'comparison_function');</code>
uasort () : sortiert ein Array mit einer benutzerdefinierten Vergleichsfunktion und verwaltet den Indexassoziation.
<code class="php">uasort($array, 'comparison_function');</code>
uksort () : sortiert ein Array nach Schlüssel mit einer benutzerdefinierten Vergleichsfunktion.
<code class="php">uksort($array, 'comparison_function');</code>
Das Sortieren eines mehrdimensionalen Arrays in PHP kann mit benutzerdefinierten Vergleichsfunktionen mit usort()
, uasort()
oder uksort()
erfolgen. Hier ist ein Beispiel, um ein mehrdimensionales Array zu sortieren, das auf einem bestimmten Schlüssel innerhalb der Sub-Arrays basiert.
Nehmen wir an, Sie haben eine Reihe von Menschen mit ihren Namen und Altersgruppen, und Sie möchten sie in aufsteigender Reihenfolge nach Alter sortieren:
<code class="php">$people = array( array("name" => "John", "age" => 25), array("name" => "Jane", "age" => 30), array("name" => "Jim", "age" => 20) ); function compareAge($a, $b) { return $a['age'] $b['age']; } usort($people, 'compareAge'); print_r($people);</code>
Dies wird ausgeben:
<code>Array ( [0] => Array ( [name] => Jim [age] => 20 ) [1] => Array ( [name] => John [age] => 25 ) [2] => Array ( [name] => Jane [age] => 30 ) )</code>
Ja, Sie können ein Array in PHP sortieren, während Sie den Index -Assoziation unter Verwendung der Funktionen asort()
und arsort()
beibehalten.
Verwenden Sie asort()
für aufsteigende Reihenfolge:
<code class="php">$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple"); asort($fruits); print_r($fruits);</code>
Dies wird ausgeben:
<code>Array ( [c] => apple [b] => banana [d] => lemon [a] => orange )</code>
Verwenden Sie arsort()
für absteigende Reihenfolge:
<code class="php">$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple"); arsort($fruits); print_r($fruits);</code>
Dies wird ausgeben:
<code>Array ( [a] => orange [d] => lemon [b] => banana [c] => apple )</code>
Beide Funktionen sortieren das Array nach Wert, aber die Schlüssel bleiben mit ihren jeweiligen Werten verbunden.
Das obige ist der detaillierte Inhalt vonWie sortiert man ein Array in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!