+1: Obrigado pela ajuda. PHP newb aqui, mas vale a pena notar que, se você estiver tentando executar essas edições dentro de um foreachloop, precisará preceder um e comercial à sua variável de enumeração para permitir o acesso de gravação.
FreeAsInBeer
1
Aqui está um link para uma solução que ilustra o comentário do link @FreeAsInBeer com relação ao e comercial.
// To unset an element from array using Key:
unset($arr["key2"]);
var_dump($arr);// output: array(3) { ["key1"]=> string(6) "value1" ["key3"]=> string(6) "value3" ["key4"]=> string(6) "value4" }
Para remover o elemento value:
// remove an element by value:
$arr = array_diff($arr,["value1"]);
var_dump($arr);// output: array(2) { ["key3"]=> string(6) "value3" ["key4"]=> string(6) "value4" }
Respostas:
Você pode usar
unset
:Exemplo:
Resultado:
fonte
foreach
loop, precisará preceder um e comercial à sua variável de enumeração para permitir o acesso de gravação.Use
unset()
:fonte
Use esta função para remover matrizes específicas de chaves sem modificar a matriz original:
O primeiro parâmetro passa toda a matriz, o segundo conjunto de chaves do conjunto de chaves a ser removido.
Por exemplo:
fonte
$output = array_except($array_1, ['color', 'fixed']);
Usando
unset
:fonte
Considere esta matriz:
Para remover um elemento usando a matriz
key
:Para remover o elemento
value
:leia mais sobre array_diff: http://php.net/manual/en/function.array-diff.php
Para remover um elemento usando
index
:leia mais sobre array_splice: http://php.net/manual/en/function.array-splice.php
fonte
Você pode precisar de dois ou mais loops, dependendo da sua matriz:
fonte
foreach ($key1
parece errado. Você quis dizerforeach ($values
?