Como bloquear um array caso ele tenha um determinado valor?
Oi gente, podem me ajudar?
Tem uma situação aqui que estou recebendo um array recheado de valores no php, somente o recebo com números inteiros, por exemplo:
Queria criar uma condição em que esse array se tornaria inválido para mim caso tivesse o número 14 por exemplo.
Se ele tiver 14, não uso o array, caso ele não tenha, o array seria válido, então eu o uso. Sabem como posso fazer isso?
Tem uma situação aqui que estou recebendo um array recheado de valores no php, somente o recebo com números inteiros, por exemplo:
array(1, 25, 3, 18, 14, 16, 78, 55, 50, 26);
Queria criar uma condição em que esse array se tornaria inválido para mim caso tivesse o número 14 por exemplo.
Se ele tiver 14, não uso o array, caso ele não tenha, o array seria válido, então eu o uso. Sabem como posso fazer isso?
Larissa Aguiar
Curtidas 0
Melhor post
Wilson Neto
22/11/2016
Você pode fazer essa verificação implementando a função "in_array()", ela retorna booleano se o valor existir no array. Basicamente você poderia fazer algo semelhante ao que está aqui embaixo:
Como você só pretende deixar passar o array que não possua 14, uma condição semelhante a que coloquei acima pode resolver o problema.
Bom, é apenas uma das possibilidades, pode existir melhores implementações é claro. :)
Caso queira saber mais sobre a função in_array() basta seguir o link da documentação http://php.net/manual/en/function.in-array.php
$arr = array(1, 25, 3, 18, 14, 16, 78, 55, 50, 26);
if(in_array(14, $arr)){
//logica para "invalidar" seu array - poderia entregar um array vazio.
//dessa forma você poderia evitar problemas como o Luiz Santos comentou acima.
}
Como você só pretende deixar passar o array que não possua 14, uma condição semelhante a que coloquei acima pode resolver o problema.
Bom, é apenas uma das possibilidades, pode existir melhores implementações é claro. :)
Caso queira saber mais sobre a função in_array() basta seguir o link da documentação http://php.net/manual/en/function.in-array.php
GOSTEI 3
Mais Respostas
Luiz Santos
21/11/2016
Bom dia Larissa.
O único caminho que você tem é ler esse array, posição por posição, atrás do valor que você vai procurar.
Só cuidado com o "depois", porque se seu sistema estiver esperando um array, se você "invalidar" o primeiro, vai ter que providenciar um segundo, ou seu sistema vai parar.
Grande abraço
O único caminho que você tem é ler esse array, posição por posição, atrás do valor que você vai procurar.
Só cuidado com o "depois", porque se seu sistema estiver esperando um array, se você "invalidar" o primeiro, vai ter que providenciar um segundo, ou seu sistema vai parar.
Grande abraço
GOSTEI 1
Diego Silva
21/11/2016
Exatamente, iria sugestionar o uso da função in_array() do php
+1 Wilson Neto!
+1 Wilson Neto!
GOSTEI 1