array_unique

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

array_uniqueRemove os valores duplicados de um array

Descrição

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

Recebe uma entrada array e retorna um novo array sem valores duplicados.

Note que as chaves são preservadas. Se vários elementos forem iguais sob as flags fornecidas, então a chave e o valor do primeiro elemento igual serão retidos.

Note: Dois elementos são considerados iguais se, e somente se, (string) $elem1 === (string) $elem2. Em palavras: quando a represetação em string é a mesma, o primeiro elemento será usado.

Parâmetros

array

O array de entrada.

flags

O segundo parâmetro opcional flags pode ser utilizado para modificar o comportamento de comparação usando estes valores:

Flags de tipo de comparação:

Valor Retornado

Retorna o array filtrado.

Registro de Alterações

Versão Descrição
7.2.0 Se flags for SORT_STRING, o array anterior foi copiado e os elementos não únicos foram removidos (sem empacotar o array em seguida), mas um novo array é criado ao adicionar os novos elementos. Isto pode resultar em índices numéricos diferentes.

Exemplos

Example #1 Exemplo de array_unique()

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

O exemplo acima produzirá:

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

Example #2 array_unique() e tipos

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

O exemplo acima produzirá:

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

Notas

Note: Note que array_unique() não se destina a funcionar em arrays multidimensionais.

Veja Também