# sort

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

sort — Trie un tableau en ordre croissant

### Description

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

Trie `array` sur place suivant les valeurs en ordre croissant.

> Note:

> Si deux membres se comparent comme égaux, ils maintiennent leur ordre original. Antérieur à PHP 8.0.0, leur ordre relatif dans le tableau trié n'est pas défini.

> Note: Cette fonction assigne de nouvelles clés aux éléments dans `array`. Elle effacera toutes les clés existantes qui ont pu être assignées, plutôt que de réarranger les clés.

> Note:

> Réinitialise le pointeur interne du tableau au premier élément.

### Liste de paramètres

`array`

  Le tableau d'entrée.

`flags`

  Le deuxième paramètre optionnel `flags` peut être utilisé pour modifier le comportement de tri en utilisant ces valeurs :

  Type de drapeaux de tri :

  - `SORT_REGULAR` - compare les éléments normalement; les détails sont décrits dans la section des opérateurs de comparaison
  - `SORT_NUMERIC` - compare les éléments numériquement
  - `SORT_STRING` - compare les éléments comme des chaînes de caractères
  - `SORT_LOCALE_STRING` - compare les éléments comme des chaînes de caractères, basé sur la locale courante. Ceci utilise la locale, qui peut être changée en utilisant setlocale()
  - `SORT_NATURAL` - compare les éléments comme des chaînes de caractères utilisant "l'ordre naturel" comme natsort()
  - `SORT_FLAG_CASE` - peut être combiné (OU bit à bit) avec `SORT_STRING` ou `SORT_NATURAL` pour trier les chaînes sans tenir compte de la casse

### Valeurs de retour

Retourne toujours `true`.

### Historique

Version | Description
--- | ---
8.2.0 | Le type de retour est maintenant `true`, auparavant il était bool.

### Exemples

Exemple #1 Exemple avec sort()

`<?php
$fruits = array("lemon", "orange", "banana", "apple");
sort($fruits);
foreach ($fruits as $key => $val) {
echo "fruits[" . $key . "] = " . $val . "\n";
}
?>`

L'exemple ci-dessus va afficher :

    fruits[0] = apple
    fruits[1] = banana
    fruits[2] = lemon
    fruits[3] = orange

Les fruits ont été classés dans l'ordre alphabétique.

Exemple #2 Exemple avec sort() en utilisant l'ordre naturel sans tenir compte de la casse

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

L'exemple ci-dessus va afficher :

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

Les fruits ont été classés comme ils l'auraient été avec la fonction natcasesort().

### Notes

> Note: Comme la plupart des fonctions de tri de PHP, sort() utilise une implémentation de » Quicksort. Le pivot est choisie au milieu de la partition, résultant ainsi en une optimisation du temps pour les tableaux déjà triés. Mais ceci ne reste qu'un détail de l'implémentation, n'ayant aucun impact pour vous.

Avertissement

Porter attention lors du tri des tableaux avec des valeurs de types différents car sort() peut produire des résultats imprévisible quand `flags` est `SORT_REGULAR`.

### Voir aussi

- rsort() - Trie un tableau en ordre décroissant
- Les fonctions de tri des tableaux