Verifica se um valor existe em um array

# in_array

(PHP 4, PHP 5, PHP 7, PHP 8)

in_array — Verifica se um valor existe em um array

### Descrição

function in_array(mixed `$needle`, array `$haystack`, bool `$strict` = `false`): bool

Procura por `needle` (agulha) no `haystack` (palheiro) usando comparação relaxada a não ser que `strict` seja definido.

### Parâmetros

`needle`

  O valor procurado.

  > Nota:

  > 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` for `true` então in_array() também irá checar os tipos de `needle` em `haystack`.

  > Nota:

  > Antes do PHP 8.0.0, uma `needle` `string` irá corresponder a um valor de `0` 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ção `strict` deve ser sempre usada para evitar comportamento inesperado.

### Valor Retornado

Retorna `true` se `needle` for encontrado no array, `false` caso contrário.

### Exemplos

Exemplo #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:

    Tem Irix

Exemplo #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

Exemplo #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

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open