Funciones de Arrays
PHP Manual

array_unique

(PHP 4 >= 4.0.1, PHP 5)

array_uniqueElimina valores duplicados de un array

Descripción

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

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

Nótese que se conservan las claves. array_unique() ordena los valores tratándolos como cadenas, manteniendo la primera clave encontrada por cada valor e ignorando las demás claves. Esto no significa que será mantenida la clave relacionada con el primer valor encontrado del array no ordenado.

Nota: Dos elementos son considerados iguales solo si (string) $elem1 === (string) $elem2. En otras palabras: cuando la representación en formato cadena es la misma. El primer elemento a ser usado.

Parámetros

array

El array de entrada.

sort_flags

El segundo parámetro opcional sort_flags puede ser usado para modificar el tipo de orden usando estos valores:

Flags de tipos de orden:

  • SORT_REGULAR - compara ítems normalmente (no cambia los tipos)
  • SORT_NUMERIC - compara ítems numéricamente
  • SORT_STRING - compara ítems como cadenas
  • SORT_LOCALE_STRING - compara ítems como cadenas, basados en la localización actual.

Valores devueltos

Devuelve el array filtrado.

Historial de cambios

Versión Descripción
5.2.10 Cambiado el valor por defecto de sort_flags a SORT_STRING.
5.2.9 Añadido el parámetro opcional sort_flags con el valor por defecto SORT_REGULAR. Antes de 5.2.9, esta función era usada para ordenar el array con SORT_STRING internamente.

Ejemplos

Ejemplo #1 Ejemplo de array_unique()

<?php
$input 
= array("a" => "verde""rojo""b" => "verde""azul""rojo");
$result array_unique($input);
print_r($result);
?>

El resultado del ejemplo sería:

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

Ejemplo #2 array_unique() y tipos

<?php
$input 
= array(4"4""3"43"3");
$result array_unique($input);
var_dump($result);
?>

El resultado del ejemplo sería:

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

Ver también

Notas

Nota: Nóte que array_unique() no está pensado para funcionar en arrays multi-dimensionales.


Funciones de Arrays
PHP Manual