Heim > Artikel > Backend-Entwicklung > So verwenden Sie die Funktion usort, um ein Array in PHP individuell zu sortieren
Sortieren ist eine der häufigsten Operationen bei der Verwendung von PHP für Array-Operationen. PHP bietet viele verschiedene Sortierfunktionen, einschließlich der usort-Funktion. Die Funktion „usort“ kann ein Array nach festgelegten Regeln sortieren. Im Gegensatz zu anderen Sortierfunktionen können Benutzer die Sortierregeln jedoch anpassen.
In diesem Artikel erfahren Sie, wie Sie die Funktion usort in PHP verwenden und wie Sie die Funktion usort für die benutzerdefinierte Sortierung verwenden.
1. Das Grundformat der usort-Funktion
Bei der Verwendung der usort-Funktion zum Sortieren müssen wir auf die folgenden Punkte achten:
Das Folgende ist das Grundformat der usort-Funktion:
usort(array &$array, callable $cmp_function)
Unter diesen ist $array das Array, das sortiert werden muss, und $cmp_function ist die Rückruffunktion, die zum Definieren der Sortierregeln verwendet wird.
2. Beispiele für die Verwendung der usort-Funktion
Sehen wir uns ein Beispiel für die Verwendung der usort-Funktion an.
<?php $fruits = array("apple", "banana", "orange", "peach"); function cmp($a, $b) { return strlen($a) - strlen($b); } usort($fruits, "cmp"); print_r($fruits); ?>
Im obigen Beispiel haben wir zunächst ein Array $fruits definiert, das vier Früchte enthält. Als nächstes definieren wir eine Rückruffunktion cmp, um die Regel zum Sortieren von Zeichenfolgenlängen von klein nach groß zu implementieren. In der Funktion usort übergeben wir das Array $fruits und die Funktion cmp als Parameter. Nachdem die Funktion ausgeführt wurde, wird das Array $fruits gemäß den Regeln der Stringlänge von klein nach groß sortiert.
Die laufenden Ergebnisse sind wie folgt:
Array ( [0] => apple [1] => peach [2] => banana [3] => orange )
3. Verwenden Sie die usort-Funktion für die benutzerdefinierte Sortierung.
Zusätzlich zur Verwendung der usort-Funktion für die normale Sortierung können wir auch benutzerdefinierte Sortierregeln entsprechend unseren eigenen Anforderungen definieren.
Das Folgende ist ein Beispiel, um ein zweidimensionales Array mit den Namen und dem Alter von Personen von klein nach groß nach Alter zu sortieren.
<?php $people = array( array('name' => 'Jim', 'age' => 23), array('name' => 'Tom', 'age' => 18), array('name' => 'Lucy', 'age' => 26), array('name' => 'Lily', 'age' => 20), ); function cmp($a, $b) { return $a['age'] - $b['age']; } usort($people, "cmp"); print_r($people); ?>
Im obigen Beispiel haben wir ein zweidimensionales Array $people definiert, das zwei Felder enthält: Name und Alter. Als nächstes definieren wir eine Rückruffunktion cmp, um die Regeln für die Sortierung nach Alter von klein nach groß zu implementieren. Was in der Funktion zurückgegeben wird, ist $a['age'] - $b['age'], was bedeutet, dass das Array nach Alter von klein nach groß sortiert wird.
Die laufenden Ergebnisse sind wie folgt:
Array ( [0] => Array ( [name] => Tom [age] => 18 ) [1] => Array ( [name] => Lily [age] => 20 ) [2] => Array ( [name] => Jim [age] => 23 ) [3] => Array ( [name] => Lucy [age] => 26 ) )
Sie können sehen, dass das $people-Array gemäß den von uns definierten Regeln von klein nach groß nach Alter sortiert wurde.
Anhand des obigen Beispiels können wir feststellen, dass die usort-Funktion über sehr leistungsstarke benutzerdefinierte Sortierfunktionen verfügt, indem einfach eine Rückruffunktion definiert wird. Es ist jedoch zu beachten, dass die Rückruffunktion einen ganzzahligen Wert zurückgeben muss, um sicherzustellen, dass die Funktion ordnungsgemäß funktionieren kann.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Funktion usort, um ein Array in PHP individuell zu sortieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!