Fórum Como bloquear um array caso ele tenha um determinado valor? #571305
21/11/2016
0
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
Curtir tópico
+ 0Post mais votado
22/11/2016
$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
Wilson Neto
Gostei + 3
Mais Posts
21/11/2016
Luiz Santos
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
22/11/2016
Diego Silva
+1 Wilson Neto!
Gostei + 1
Clique aqui para fazer login e interagir na Comunidade :)