# sort

(PHP 4, PHP 5, PHP 7, PHP 8)

sort — Sortiert ein Array in aufsteigender Reihenfolge

### Beschreibung

sort(array `&$array`, int `$flags` = `SORT_REGULAR`): bool

Sortiert `array` nach Werten in aufsteigender Reihenfolge.

> 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.

> Hinweis: Diese Funktion weist den Elementen des Arrays `array` neue Schlüssel zu. Bestehende Schlüssel, die bereits zugewiesen wurden, werden entfernt statt einfach nur die Schlüssel neu anzuordnen

> Hinweis:

> Setzt den internen Zeiger des Arrays auf das erste Element zurück.

### Parameter-Liste

`array`

  Das Eingabe-Array.

`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.

### Rückgabewerte

Gibt immer `true` zurück.

### Changelog

Version | Beschreibung
--- | ---
8.2.0 | Der Rückgabewert ist nun `true` vorher war es bool.

### Beispiele

Beispiel #1 sort()-Beispiel

`<?php
$fruits = array("Zitrone", "Orange", "Banane", "Apfel");
sort($fruits);
foreach ($fruits as $key => $val) {
echo "fruits[" . $key . "] = " . $val . "\n";
}
?>`

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

    fruits[0] = Apfel
    fruits[1] = Banane
    fruits[2] = Orange
    fruits[3] = Zitrone

Die Früchte wurden in alphabetischer Reihenfolge sortiert.

Beispiel #2 sort()-Beispiel mit natürlicher Sortierung ohne Beachtung der Groß- und Kleinschreibung

`<?php
$fruits = array(
"Orange1", "orange2", "Orange3", "orange20"
);
sort($fruits, SORT_NATURAL | SORT_FLAG_CASE);
foreach ($fruits as $key => $val) {
echo "fruits[" . $key . "] = " . $val . "\n";
}
?>`

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

    fruits[0] = Orange1
    fruits[1] = orange2
    fruits[2] = Orange3
    fruits[3] = orange20

Die Früchte wurden wie durch natcasesort() sortiert.

### Anmerkungen

> Hinweis: Wie die meisten PHP-Sortierfunktionen benutzt sort() eine Implementierung von » Quicksort. Das Pivotelement wird aus der Mitte der Partition gewählt, was zu optimaler Laufzeit für bereits sortierte Arrays führt. Das ist jedoch ein Implementierungsdetail, auf das man sich nicht verlassen sollte.

Warnung

Vorsicht ist geboten wenn Arrays mit Werten unterschiedlichen Typs sortiert werden, weil sort() unerwartete Ergebnisse liefern kann, wenn `flags` `SORT_REGULAR` ist.

### Siehe auch

- rsort() - Sortiert ein Array in absteigender Reihenfolge
- Den Vergleich von Arraysortierungsfunktionen

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open