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( )
$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 :
Tem 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" ; ?
' ph ' foi encontrado 'o ' foi encontrado
Veja também array_search( ) .