Forum und email

in_array

(PHP 4, PHP 5)

in_array — Checa se um valor existe em um array

Descrição

bool in_array ( mixed $needle , array $haystack [, bool $strict ] )

Procura em haystack pelo valor needle e retorna TRUE se este valor for encontrado no array, e FALSE em caso contrário.

Se o terceiro parâmetro strict for TRUE então in_array() também irá checar os tipos de needle em haystack .

Nota: Se needle for uma string, a comparação é feita diferenciando caracteres maiúsculos e minúsculos.

Nota: Em versões do PHP mais antigas que 4.2.0 needle não pode ser um array.

Example#1 Exemplo de 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:

Got Irix

Example#2 in_array() com checagem de tipos

<?php
$a 
= array('1.10'12.41.13);

if (
in_array('12.4'$atrue)) {
    echo 
"'12.4' encontrado com checagem de tipo\n";
}
if (
in_array(1.13$atrue)) {
    echo 
"1.13 encontrado com checagem de tipo\n";
}
?>

O exemplo acima irá imprimir:

1.13 encontrado com checagem de tipo

Example#3 Exemplo de in_array() passando um array para needle

<?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 irá imprimir:

    'ph' foi encontrado
    'o' foi encontrado

Veja também array_search(), array_key_exists() e isset().