Executar Array Eliminar por Valor Não Chave em PHP
-
Utilize a função
array_search()
eunset()
para executar o Array Delete por valor e não por chave em PHP -
Utilize o
array_diff()
Função para executar a exclusão de array por valor, mas não por chave, em PHP
Este artigo irá introduzir diferentes métodos para remover valor de um array em PHP.
Utilize a função array_search()
e unset()
para executar o Array Delete por valor e não por chave em PHP
O principal procedimento para executar a eliminação de array por valor, mas não uma chave, é encontrar primeiro o valor. Poderíamos apagar o valor depois de o encontrarmos. Encontraremos o valor utilizando a função array_search()
e apagá-lo utilizando a função unset()
. A função unset()
redefine uma variável. A sintaxe correcta para utilizar estas funções é a seguinte.
Sintaxe da função array_search()
array_search($value, $array, $strict);
A função integrada array_search()
tem três parâmetros. Os detalhes dos seus parâmetros são os seguintes
Parâmetros | Descrição | |
---|---|---|
$value |
obrigatório | É o valor que queremos pesquisar no array. |
$array |
obrigatório | É a matriz em que pesquisaremos o valor dado. |
$strict |
opcional | Se este parâmetro for definido para “VERDADEIRO”, então a função também pesquisará os elementos idênticos no array. |
Esta função retorna a chave do fornecido.
Sintaxe de unset()
unset($variable1, $variable2, ..., $variableN);
A função embutida unset()
tem múltiplos parâmetros. Os detalhes dos seus parâmetros são os seguintes
Parâmetros | Descrição | |
---|---|---|
$variable1 , $variable2 , $variableN |
obrigatório | É a variável ou estrutura de dados que queremos desajustar. Pelo menos uma variável é obrigatória. |
Esta função não retorna nada.
Exemplo de remoção de valores de um Array em PHP
O programa abaixo mostra como podemos utilizar estas funções para executar a eliminação de array por valor, mas não por chave, em PHP.
<?php
$array = array("Rose","Lili","Jasmine","Hibiscus","Daffodil","Daisy");
echo("Array before deletion: \n");
var_dump($array);
$value = "Jasmine";
if (($key = array_search($value, $array)) !== false) {
unset($array[$key]);
}
echo("Array after deletion: \n");
var_dump($array);
?>
Resultado:
Array before deletion:
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"
}
Array after deletion:
array(5) {
[0]=>
string(4) "Rose"
[1]=>
string(4) "Lili"
[3]=>
string(8) "Hibiscus"
[4]=>
string(8) "Daffodil"
[5]=>
string(5) "Daisy"
}
Utilize o array_diff()
Função para executar a exclusão de array por valor, mas não por chave, em PHP
Em PHP, também podemos utilizar a função array_diff()
para executar a eliminação de array por valor e não por chave. Esta função calcula a diferença de um dado array com outro array. A sintaxe correcta para utilizar esta função é a seguinte.
Sintaxe
array_diff($array, $Arr1, $Arr2, ...,$ArrN);
A função array_diff()
aceita parâmetros N+1. O detalhe dos seus parâmetros é o seguinte.
Parâmetros | Descrição | |
---|---|---|
$array |
obrigatório | É a matriz principal da qual queremos retirar um valor |
$Arr1 , $Arr2 , $ArrN |
obrigatório | É o array que queremos remover. A função irá tirar a sua diferença com a matriz e retirá-la do array se ela estiver presente. |
O programa que executa a eliminação do array por valor, mas não a chave, é o seguinte.
<?php
$array = array("Rose","Lili","Jasmine","Hibiscus","Daffodil","Daisy");
echo("Array before deletion: \n");
var_dump($array);
$value = array("Jasmine");
$array = array_diff( $array, $value);
echo("Array after deletion: \n");
var_dump($array);
?>
Resultado:
Array before deletion:
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"
}
Array after deletion:
array(5) {
[0]=>
string(4) "Rose"
[1]=>
string(4) "Lili"
[3]=>
string(8) "Hibiscus"
[4]=>
string(8) "Daffodil"
[5]=>
string(5) "Daisy"
}
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