# array_unique

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

array_unique — Elimina valores duplicados de un array

### Descripción

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

Toma un `array` y devuelve un nuevo array sin valores duplicados.

Tenga en cuenta que las claves se conservan. Si múltiples elementos se comparan bajo el parámetro `sort_flags`, entonces la clave y el valor del primer elemento igual se conservarán.

> Nota: Dos elementos son considerados iguales solo si `(string) $elem1 === (string) $elem2`, es decir, cuando la representación en formato de string sea la misma, se usará el primer elemento.

### Parámetros

`array`

  El array de entrada.

`sort_flags`

  El segundo parámetro opcional `sort_flags` se puede utilizar para modificar el tipo de orden usando estos valores:

  Indicadores de tipos de orden:

  - `SORT_REGULAR` - compara ítems normalmente (no cambia los tipos)
  - `SORT_NUMERIC` - compara ítems numéricamente
  - `SORT_STRING` - compara ítems como strings
  - `SORT_LOCALE_STRING` - compara ítems como strings, basados en la configuración regional en uso.

### Valores devueltos

Devuelve el array filtrado.

### Historial de cambios

Versión | Descripción
--- | ---
7.2.0 | Si el parámetro `sort_flags` es `SORT_STRING`, el `array` anterior ha sido copiado y se han eliminado los elementos no únicos (sin empaquetar el array posteriormente), pero ahora se construye un nuevo array añadiendo los elementos únicos. Esto puede dar lugar a diferentes índices numéricos.
5.2.10 | Se volvió a cambiar el valor predeterminado de `sort_flags` a `SORT_STRING`.
5.2.9 | Se añadió el parámetro opcional `sort_flags` con el valor predeterminado `SORT_REGULAR`. Antes de 5.2.9, esta función se usaba para ordenar el array con `SORT_STRING` internamente.

### Ejemplos

Ejemplo #1 Ejemplo de array_unique()

`<?php
$entrada = array("a" => "verde", "rojo", "b" => "verde", "azul", "rojo");
$resultado = array_unique($entrada);
print_r($resultado);
?>`

El resultado del ejemplo sería:

    Array
    (
        [a] => verde
        [0] => rojo
        [1] => azul
    )

Ejemplo #2 array_unique() y tipos

`<?php
$entrada = array(4, "4", "3", 4, 3, "3");
$resultado = array_unique($entrada);
var_dump($resultado);
?>`

El resultado del ejemplo sería:

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

### Ver también

- array_count_values() - Cuenta todos los valores de un array

### Notas

> Nota: Observe que array_unique() no está pensado para que trabaje con arrays multidimensionales.