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.

Exemplo 1. Exemplo de in_array()

<?php
$os
= array("Mac", "NT", "Irix", "Linux");
if (
in_array("Irix", $os)) {
    print
"Tem Irix";
}
if (
in_array("mac", $os)) {
    print
"Tem mac";
}
?>

A segunda condicional falha pois in_array() diferencia letras minúsculas e maiúsculas. Então, a saída seria:

Got Irix

Exemplo 2. in_array() com checagem de tipos

<?php
$a
= array('1.10', 12.4, 1.13);

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

A saída seria:

1.13 encontrado com checagem de tipo

Exemplo 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";
    }
    
/* Outputs:
    'ph' was found
    'o' was found
    */
?>

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