Remover valores duplicados de um Array em PHP
Este artigo irá introduzir um método para remover valores duplicados de um array em PHP.
Utilize a função array_unique()
para remover valores duplicados de um array em PHP
Podemos utilizar a função array_unique()
para remover valores duplicados de um array. A função array_unique()
é uma função especializada para remover os valores duplicados de um array. A sintaxe correcta para utilizar esta função é a seguinte.
array_unique($array, $flags);
A função array_unique()
tem dois parâmetros. Os detalhes dos seus parâmetros são os seguintes.
Variáveis | Descrição |
---|---|
$array |
É a matriz da qual queremos remover os valores duplicados. |
$flags |
Especifica o padrão de ordenação do array. As bandeiras de triagem são de cinco tipos. SORT_REGULAR compara itens normalmente SORT_NUMERIC compara itens numericamente SORT_STRING compara itens como strings SORT_LOCALE_STRING compara itens como strings, com base no local actual. |
Esta função devolve o array livre de valores duplicados. O programa abaixo mostra as formas pelas quais podemos utilizar a função array_unique()
para remover valores duplicados de um array em PHP.
<?php
$array = array("Rose","Lili","Jasmine","Hibiscus","Daffodil","Daisy","Daffodil","Daisy","Lili","Jasmine","Jasmine");
echo("Array before removal: \n");
var_dump($array);
$array = array_unique($array);
echo("Array after removal: \n");
var_dump($array);
?>
Resultado:
Array before removal:
array(11) {
[0]=>
string(4) "Rose"
[1]=>
string(4) "Lili"
[2]=>
string(7) "Jasmine"
[3]=>
string(8) "Hibiscus"
[4]=>
string(8) "Daffodil"
[5]=>
string(5) "Daisy"
[6]=>
string(8) "Daffodil"
[7]=>
string(5) "Daisy"
[8]=>
string(4) "Lili"
[9]=>
string(7) "Jasmine"
[10]=>
string(7) "Jasmine"
}
Array after removal:
array(6) {
[0]=>
string(4) "Rose"
[1]=>
string(4) "Lili"
[2]=>
string(7) "Jasmine"
[3]=>
string(8) "Hibiscus"
[4]=>
string(8) "Daffodil"
[5]=>
string(5) "Daisy"
}
A função retornou um array filtrada.
Agora, se passarmos o parâmetro $flags
, a saída será alterada.
<?php
$array = array("Rose","Lili","Jasmine","Hibiscus","Daffodil","Daisy","Daffodil","Daisy","Lili","Jasmine","Jasmine");
echo("Array before removal: \n");
var_dump($array);
$array = array_unique($array, SORT_NUMERIC);
echo("Array after removal: \n");
var_dump($array);
?>
Resultado:
Array before removal:
array(11) {
[0]=>
string(4) "Rose"
[1]=>
string(4) "Lili"
[2]=>
string(7) "Jasmine"
[3]=>
string(8) "Hibiscus"
[4]=>
string(8) "Daffodil"
[5]=>
string(5) "Daisy"
[6]=>
string(8) "Daffodil"
[7]=>
string(5) "Daisy"
[8]=>
string(4) "Lili"
[9]=>
string(7) "Jasmine"
[10]=>
string(7) "Jasmine"
}
Array after removal:
array(1) {
[0]=>
string(4) "Rose"
}
A função ordenou agora o array numericamente.
Artigo relacionado - PHP Array
- Como determinar a primeira e última iteração em um loop de Foreach em PHP
- Como Converter um Array em uma string em PHP
- Como Obter o Primeiro Elemento de um Array em PHP
- Como fazer Eco ou Imprimir um Array em PHP
- Como excluir um elemento de uma array em PHP
- Como remover elementos de vetor vazio em PHP