(PHP 4, PHP 5, PHP 7, PHP 8)
in_array — Checks if a value exists in an array
Searches for needle
in haystack
using loose comparison
unless strict
is set.
needle
The searched value.
Note:
If
needle
is a string, the comparison is done in a case-sensitive manner.
haystack
The array.
strict
If the third parameter strict
is set to true
then the in_array() function will also check the
types of the
needle
in the haystack
.
Note:
Prior to PHP 8.0.0, a
string
needle
will match an array value of0
in non-strict mode, and vice versa. That may lead to undesireable results. Similar edge cases exist for other types, as well. If not absolutely certain of the types of values involved, always use thestrict
flag to avoid unexpected behavior.
Returns true
if needle
is found in the array,
false
otherwise.
Example #1 in_array() example
<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
echo "Got Irix";
}
if (in_array("mac", $os)) {
echo "Got mac";
}
?>
The second condition fails because in_array() is case-sensitive, so the program above will display:
Got Irix
Example #2 in_array() with strict example
<?php
$a = array('1.10', 12.4, 1.13);
if (in_array('12.4', $a, true)) {
echo "'12.4' found with strict check\n";
}
if (in_array(1.13, $a, true)) {
echo "1.13 found with strict check\n";
}
?>
The above example will output:
1.13 found with strict check
Example #3 in_array() with an array as needle
<?php
$a = array(array('p', 'h'), array('p', 'r'), 'o');
if (in_array(array('p', 'h'), $a)) {
echo "'ph' was found\n";
}
if (in_array(array('f', 'i'), $a)) {
echo "'fi' was found\n";
}
if (in_array('o', $a)) {
echo "'o' was found\n";
}
?>
The above example will output:
'ph' was found 'o' was found