# array_unique

(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)

array_unique — Dédoublonne un tableau

### Description

array_unique(array `$array`, int `$flags` = `SORT_STRING`): array

array_unique() extrait du tableau `array` les valeurs distinctes, et supprime tous les doublons.

Notez que les clés sont préservées. Si plusieurs éléments comparés sont égaux sous le `flags` donné, alors la clé et la valeur du premier élément égal sera conservé.

> Note: Deux éléments sont considérés comme égaux si et seulement si `(string) $elem1 === (string) $elem2`, i.e. lorsque la représentation en chaîne de caractères est identique.

### Liste de paramètres

`array`

  Le tableau d'entrée.

`flags`

  Le second paramètre optionnel `flags` peut être utilisé pour modifier le comportement de comparaison en utilisant les valeurs suivantes :

  Drapeau de type de comparaison :

  - `SORT_REGULAR` - compare les éléments normalement (ne modifie pas les types)
  - `SORT_NUMERIC` - compare les éléments numériquement
  - `SORT_STRING` - compare les éléments comme des chaînes
  - `SORT_LOCALE_STRING` - compare les éléments comme des chaînes, suivant la locale courante.

### Valeurs de retour

Retourne le tableau filtré.

### Historique

Version | Description
--- | ---
7.2.0 | Si `flags` est `SORT_STRING`, précédemment `array` était copié et les éléments non-unique était supprimé (sans compresser le tableau après), mais maintenant un nouveau tableau est construit en ajoutant les éléments unique. Par conséquence le résultat final peut avoir des index numérique différent.

### Exemples

Exemple #1 Exemple avec array_unique()

`<?php
$input = ["a" => "green", "red", "b" => "green", "blue", "red"];
$result = array_unique($input);
print_r($result);
?>`

L'exemple ci-dessus va afficher :

    Array
    (
        [a] => green
        [0] => red
        [1] => blue
    )

Exemple #2 Exemple avec array_unique() et les types

`<?php
$input = [4, "4", "3", 4, 3, "3"];
$result = array_unique($input);
var_dump($result);
?>`

L'exemple ci-dessus va afficher :

    array(2) {
      [0] => int(4)
      [2] => string(1) "3"
    }

### Notes

> Note: Notez que array_unique() ne fonctionne pas avec des tableaux multidimensionnels.

### Voir aussi

- array_count_values() - Compte les occurrences de chaque valeur distincte dans un tableau