array_unique

(PHP 4 >= 4.0.1, PHP 5)

array_uniqueDédoublonne un tableau

Description

array array_unique ( array $array [, int $sort_flags = SORT_STRING ] )

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

Notez que les clés sont préservées. array_unique() trie les valeurs traitées comme des chaînes dans un premier temps, puis garde la première clé rencontrée pour chaque valeur et ignore les clés suivantes. Cela ne signifie pas que la clé de la première valeur rencontrée du tableau array non trié sera conservée.

Note: Deux éléments sont considérés comme égaux si et seulement si (string) $elem1 === (string) $elem2. En clair : lorsque la représentation en chaîne de caractères est identique. Le premier élément sera utilisé

Liste de paramètres

array

Le tableau d'entrée.

sort_flags

Le second paramètre optionnel sort_flags peut être utilisé pour modifier la façon dont s'effectue le tri en utilisant les valeurs suivantes :

Drapeau de type de tri :

  • 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
5.2.10 Changement de la valeur par défaut de sort_flags à nouveau vers SORT_STRING.
5.2.9 Ajout du paramètre optionnel sort_flags, qui faut par défaut SORT_REGULAR. Avant 5.2.9, cette fonction utilisait par défaut SORT_STRING, en interne.

Exemples

Exemple #1 Exemple avec array_unique()

<?php
$input = array("a" => "green", "red", "b" => "green", "blue", "red");
$result = array_unique($input);
print_r($result);
?>
<?php
$input = array(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"
}

Voir aussi

Notes

Note: Notez que array_unique() ne fonctionne pas avec des tableaux multi-dimensionnels.

LoadingChargement en cours