In PHP gibt es viele Möglichkeiten, die Werte in einem Array zu sortieren. In diesem Artikel behandeln wir einige gängige Sortiermethoden in PHP und stellen Beispielcode bereit, damit Sie besser verstehen, wie Werte in einem Array sortiert werden.
1. Die Funktion sort() ist eine der integrierten Sortierfunktionen von PHP. Sie kann die Werte im Array in aufsteigender Reihenfolge sortieren, also von klein nach groß. Die Funktion sort() wird wie folgt verwendet:
sort($array);
wobei $array das zu sortierende Array darstellt.
Der Beispielcode lautet wie folgt:
$ages = array(20, 15, 30, 25, 18); sort($ages); print_r($ages);
Der obige Code gibt die folgenden Ergebnisse auf dem Bildschirm aus:
Array ( [0] => 15 [1] => 18 [2] => 20 [3] => 25 [4] => 30 )
Wenn Sie in absteigender Reihenfolge sortieren möchten, können Sie die Funktion rsort() verwenden. Die Verwendung der Funktion rsort() ähnelt der Verwendung der Funktion sort().
Der Beispielcode lautet wie folgt:
$ages = array(20, 15, 30, 25, 18); rsort($ages); print_r($ages);
Der obige Code gibt die folgenden Ergebnisse auf dem Bildschirm aus:
Array ( [0] => 30 [1] => 25 [2] => 20 [3] => 18 [4] => 15 )
2. asort()-Funktion
asort()-Funktion kann die Werte im Array aufsteigend sortieren Ordnen Sie die Schlüsselnamen und behalten Sie sie bei. Mit anderen Worten: Nach dem Sortieren bleibt die Beziehung zwischen Schlüsselnamen und Werten unverändert. Dies ist in Situationen nützlich, in denen Sie einen Schlüsselnamen anhand seines Werts suchen müssen. Die Verwendung der Funktion
asort() ist wie folgt:
asort($array);
wobei $array das zu sortierende Array darstellt.
Der Beispielcode lautet wie folgt:
$ages = array("Peter"=>20, "John"=>15, "Mary"=>30, "David"=>25, "Jake"=>18); asort($ages); print_r($ages);
Der obige Code gibt die folgenden Ergebnisse auf dem Bildschirm aus:
Array ( [John] => 15 [Jake] => 18 [Peter] => 20 [David] => 25 [Mary] => 30 )
Wenn Sie in absteigender Reihenfolge sortieren möchten, können Sie die Funktion arsort() verwenden.
Der Beispielcode lautet wie folgt:
$ages = array("Peter"=>20, "John"=>15, "Mary"=>30, "David"=>25, "Jake"=>18); arsort($ages); print_r($ages);
Der obige Code gibt die folgenden Ergebnisse auf dem Bildschirm aus:
Array ( [Mary] => 30 [David] => 25 [Peter] => 20 [Jake] => 18 [John] => 15 )
3. Die Funktion ksort()
Die Funktion ksort() kann die Werte im Array aufsteigend sortieren Reihenfolge entsprechend dem Schlüsselnamen. Die Funktion ksort() wird wie folgt verwendet:
ksort($array);
Unter diesen stellt $array das zu sortierende Array dar.
Der Beispielcode lautet wie folgt:
$age = array("Peter"=>20, "John"=>15, "Mary"=>30, "David"=>25, "Jake"=>18); ksort($age); print_r($age);
Der obige Code gibt die folgenden Ergebnisse auf dem Bildschirm aus:
Array ( [David] => 25 [Jake] => 18 [John] => 15 [Mary] => 30 [Peter] => 20 )
Wenn Sie in absteigender Reihenfolge sortieren möchten, können Sie die Funktion krsort() verwenden.
Der Beispielcode lautet wie folgt:
$age = array("Peter"=>20, "John"=>15, "Mary"=>30, "David"=>25, "Jake"=>18); krsort($age); print_r($age);
Der obige Code gibt die folgenden Ergebnisse auf dem Bildschirm aus:
Array ( [Peter] => 20 [Mary] => 30 [John] => 15 [Jake] => 18 [David] => 25 )
4. usort()-Funktion
Wenn Sie die Sortierlogik anpassen müssen, können Sie die Funktion usort( ) Funktion. Mit der Funktion usort() können Sie eine Rückruffunktion zum Vergleichen zweier Werte definieren. Diese Rückruffunktion akzeptiert zwei Parameter und gibt eine Ganzzahl zurück, die kleiner, gleich oder größer als 0 ist, um die Ordnungsbeziehung zwischen den beiden Werten anzugeben. Die Verwendung der Funktion
usort() ist wie folgt:
usort($array, $callback);
wobei $array das zu sortierende Array darstellt und $callback die Rückruffunktion darstellt, die zum Vergleichen zweier Werte verwendet wird.
Der Beispielcode lautet wie folgt:
function cmp($a, $b) { if ($a == $b) { return 0; } return ($a > $b) ? -1 : 1; } $ages = array(20, 15, 30, 25, 18); usort($ages, "cmp"); print_r($ages);
Der obige Code gibt die folgenden Ergebnisse auf dem Bildschirm aus:
Array ( [0] => 30 [1] => 25 [2] => 20 [3] => 18 [4] => 15 )
Im obigen Beispiel haben wir eine Rückruffunktion namens „cmp“ definiert. Diese Funktion akzeptiert zwei Parameter ($a, $b) und gibt eine Ganzzahl zurück, die kleiner, gleich oder größer als 0 ist. In diesem Beispiel verwenden wir eine Callback-Funktion, um die Werte im Array in absteigender Reihenfolge zu sortieren.
Zusammenfassung
In PHP gibt es mehrere Möglichkeiten, Werte in einem Array zu sortieren. Mit den Funktionen sort() und rsort() können Sie in aufsteigender und absteigender Reihenfolge sortieren. Sie können auch die Funktionen asort() und arsort() verwenden, um ein Array basierend auf Werten zu sortieren und die Schlüsselnamen beizubehalten. Wenn Sie die Werte in einem Array nach Schlüsselnamen sortieren müssen, können Sie die Funktionen ksort() und krsort() verwenden. Wenn Sie schließlich eine benutzerdefinierte Sortierlogik benötigen, können Sie die Funktion usort() verwenden.
Egal welche Art der Sortierung Sie benötigen, in PHP gibt es entsprechende Funktionen und Methoden, die Ihnen bei der Erledigung Ihrer Aufgabe helfen. Durch das Erlernen der oben genannten Inhalte können Sie beim Schreiben von PHP-Code die Werte im Array freier verarbeiten und Ihre Entwicklungseffizienz verbessern.
Das obige ist der detaillierte Inhalt vonSo sortieren Sie Werte in einem Array mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!