Aprenda a remover elementos de um array no PHP

Veja como remover um elemento específico de um array no PHP utilizando diferentes métodos para manipulação de listas.

Como remover um elemento de um array no PHP?

A remoção de elementos de um array no PHP pode ser feita de diferentes maneiras, dependendo se o array é numérico ou associativo. As funções mais utilizadas para essa tarefa são unset(), array_splice() e array_diff().

Removendo um elemento com unset()

A função unset() remove um item do array, mas mantém a estrutura original do índice:

<?php
$numeros = [10, 20, 30, 40];
unset($numeros[1]);
print_r($numeros);
?>

Saída:

Array ( [0] => 10 [2] => 30 [3] => 40 )

O índice 1 foi removido, mas os outros índices permanecem inalterados.

Removendo um elemento e reindexando com array_splice()

Se quisermos remover um item e reorganizar os índices, usamos array_splice():

<?php
$numeros = [10, 20, 30, 40];
array_splice($numeros, 1, 1);
print_r($numeros);
?>

Saída:

Array ( [0] => 10 [1] => 30 [2] => 40 )

Aqui, o índice foi corrigido automaticamente após a remoção.

Removendo um valor específico com array_diff()

Se quisermos remover um valor específico sem nos preocupar com índices, usamos array_diff():

<?php
$numeros = [10, 20, 30, 40];
$numeros = array_diff($numeros, [20]);
print_r($numeros);
?>

Saída:

Array ( [0] => 10 [2] => 30 [3] => 40 )

Aqui, todos os elementos iguais a 20 foram removidos sem precisar saber a chave.

Remover elementos de arrays no PHP é uma operação comum quando lidamos com listas dinâmicas, como registros de banco de dados e carrinhos de compras. Dependendo do caso, unset() é ideal para exclusões simples, enquanto array_splice() reorganiza os índices automaticamente. Já array_diff() é útil quando queremos remover elementos sem nos preocupar com suas posições.

Algumas aplicações:

  • Remoção de itens em carrinhos de compras
  • Filtragem de elementos indesejados em listas
  • Exclusão de registros duplicados ou inválidos
  • Manipulação de dados dinâmicos vindos de formulários

Dicas para quem está começando

  • Use unset() para remover um item sem reindexar o array.
  • Se precisar corrigir os índices após a remoção, prefira array_splice().
  • Quando precisar remover valores específicos sem saber o índice, array_diff() é a melhor escolha.
  • Se estiver manipulando arrays associativos, unset() mantém as chaves intactas.
  • Teste sempre a saída do array após a remoção para garantir que os dados foram manipulados corretamente.

Contribuições de Daniel Moreira

Compartilhe este tutorial: Como remover um elemento de um array?

Compartilhe este tutorial

Continue aprendendo:

Como ordenar um array em PHP?

Veja como ordenar arrays em PHP utilizando funções nativas para organizar dados de maneira eficiente.

Tutorial anterior

Como verificar se um valor existe em um array?

Veja como verificar se um valor existe em um array no PHP utilizando diferentes abordagens para arrays numéricos e associativos.

Próximo tutorial