in_array
(PHP 4, PHP 5, PHP 7, PHP 8)
in_array — Checa se um valor existe em um array
Descrição
Procura por needle
(agulha) no haystack
(palheiro) usando comparação frouxa
a não ser que strict
seja definido.
Parâmetros
needle
-
O valor procurado.
Note:
Se
needle
for uma string, a comparação é feita diferenciando caracteres maiúsculos e minúsculos. haystack
-
O array.
strict
-
Se o terceiro parâmetro
strict
fortrue
então in_array() também irá checar os tipos deneedle
emhaystack
.Note:
Antes do PHP 8.0.0, uma
needle
string
irá corresponder a um valor de0
no array em modo não estrito, e vice-versa. Isso pode levar a resultados indesejáveis. Casos extremos similares exitem para outros tipos, também. Se não houver certeza absoluta dos tipos dos valores envolvidos, a opçãostrict
deve ser sempre usada para evitar comportamento inesperado.
Exemplos
Example #1 Exemplo da in_array()
<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
echo "Tem Irix";
}
if (in_array("mac", $os)) {
echo "Tem mac";
}
?>
A segunda condicional falha pois in_array() diferencia letras minúsculas e maiúsculas. Então, a saída seria:
Tem Irix
Example #2 in_array() com verificação de tipos
<?php
$a = array('1.10', 12.4, 1.13);
if (in_array('12.4', $a, true)) {
echo "'12.4' encontrado com verificação de tipo\n";
}
if (in_array(1.13, $a, true)) {
echo "1.13 encontrado com verificação de tipo\n";
}
?>
O exemplo acima produzirá:
1.13 encontrado com verificação de tipo
Example #3 Exemplo de in_array() passando um array como agulha
<?php
$a = array(array('p', 'h'), array('p', 'r'), 'o');
if (in_array(array('p', 'h'), $a)) {
echo "'ph' foi encontrado\n";
}
if (in_array(array('f', 'i'), $a)) {
echo "'fi' foi encontrado\n";
}
if (in_array('o', $a)) {
echo "'o' foi encontrado\n";
}
?>
O exemplo acima produzirá:
'ph' foi encontrado 'o' foi encontrado
Veja Também
- array_search() - Procura por um valor em um array e retorna sua chave correspondente caso seja encontrado
- isset() - Determina se uma variável está declarada e é diferente de null
- array_key_exists() - Verifica se uma chave ou índice existe em um array