In PHP kann die Sort () -Funktion verwendet werden, um Arrays nach Wert zu sortieren, aber ihr Nachteil ist, dass sie die Schlüsselnamen des Arrays zerstören. Um die Schlüsselnamen zu erhalten, können wir benutzerdefinierte Funktionen verwenden, um diese Funktion zu implementieren.
Hier ist eine benutzerdefinierte Funktion, die die Schlüsselnamen eines Arrays beim Sortieren nach Wert bewahrt:
Funktion SortbyValue ($ array) { $ sortEdValues = array_values ($ array); Asort ($ sortEdValues); $ sortedKeys = array_keys ($ sortEdValues); return array_combine ($ sortedKeys, $ array); }
Nehmen wir an, wir haben ein Array mit Schlüsselnamen. Der folgende Code zeigt an, wie das Array mithilfe einer benutzerdefinierten Funktion sortiert wird:
$ array = [ 'Apple' => 10, 'Banana' => 20, 'Orange' => 5 ]; $ sortedArray = SortByValue ($ array); print_r ($ sortedArray);
Das Ausgabeergebnis nach der Ausführung des Codes lautet:
Array ( [Orange] => 5 [Apple] => 10 [Banane] => 20 )
Wie Sie sehen können, ist das Array in aufsteigender Wertereihenfolge sortiert und die Schlüsselnamen werden nicht geändert.
Durch die in diesem Artikel beschriebenen Methoden können PHP -Entwickler Arrays leicht nach Wert sortieren und Schlüsselnamen aufbewahren. Diese Methode vermeidet das Problem der fehlenden Schlüsselnamen bei der Verwendung der Sort () -Funktion und ist für Situationen sehr geeignet, in denen der Schlüsselname an seinen entsprechenden Wert gehalten werden muss.