Avatar ·

Remoção de elemento de array PHP por valor (não por chave)

Olá a todos! Comecei a estudar PHP e me deparei com um problema. Tenho um array com números: ```php $fruits = ['apple', 'banana', 'cherry', 'date', 'banana']; ``` Preciso remover dele o elemento com valor 'banana'. Mas o problema é que não sei em qual índice ele está. Todos os exemplos que encontro mostram remoção por chave usando `unset($array[2])`, mas minha chave é desconhecida. Tentei escrever um loop, mas ele não funciona corretamente — remove apenas o primeiro elemento, e o segundo 'banana' permanece. Ou então quebra os índices do array. Preciso que TODOS os elementos com valor 'banana' sejam removidos. Aqui está o que tentei: ```php foreach ($fruits as $key => $value) { if ($value === 'banana') { unset($fruits[$key]); } } ``` Isso parece funcionar, mas ouvi dizer que existe uma função embutida para isso. Digam-me, como remover corretamente um elemento por valor em PHP? E o que é melhor usar — loop ou uma função especial? Desde já, obrigado!