(PHP 5 >= 5.2.0, PHP 7, PHP 8)
ArrayObject::asort — Sort the entries by value
Sorts the entries in ascending order, such that its keys maintain their correlation with the values they are associated with.
This is used mainly when sorting associative arrays where the actual element order is significant.
Hinweis:
Wenn zwei Mitglieder als identisch verglichen werden, behalten sie ihre ursprüngliche Reihenfolge bei. Vor PHP 8.0.0 war die relative Sortierung im sortierten Array nicht definiert.
flags
Der optionale zweite Parameter flags
kann mit folgenden Werten genutzt werden, um das Sortierverhalten zu ändern:
Flags für den Sortiertyp:
SORT_REGULAR
- vergleicht Elemente normal; die Details werden im Abschnitt Vergleichsoperatoren beschrieben. SORT_NUMERIC
- vergleicht Elemente numerisch. SORT_STRING
- vergleicht Elemente als Zeichenketten. SORT_LOCALE_STRING
- vergleicht Elemente als Zeichenketten, basierend auf dem aktuellen Gebietsschema. Es wird das Gebietsschema verwendet, das mit setlocale() geändert werden kann. SORT_NATURAL
- vergleicht Elemente als Zeichenketten wie natsort() mit "natürlicher Ordnung". SORT_FLAG_CASE
- kann kombiniert werden (bitweise ODER) mit SORT_STRING
oder SORT_NATURAL
, um Zeichenketten ohne Berücksichtigung der Groß- und Kleinschreibung zu sortieren. Gibt immer true
zurück.
Beispiel #1 ArrayObject::asort() example
<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
$fruitArrayObject = new ArrayObject($fruits);
$fruitArrayObject->asort();
foreach ($fruitArrayObject as $key => $val) {
echo "$key = $val\n";
}
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
c = apple b = banana d = lemon a = orange
The fruits have been sorted in alphabetical order, and the key associated with each entry has been maintained.