The PHP in_array is one of the built-in functions in PHP (Hypertext Preprocessor) which is used to search a specific value on a set of an array.
In this article, we will talk about in_array function in a detailed explanation as well as samples in order for you to understand it easily. This is a continuance of the previous topic, entitled Array Push PHP.
What is in_array PHP?
In PHP, in_array is a function which is used to check if a given value in the array exists or not.
Further, Once the given value exists it will return TRUE, otherwise FALSE.
Syntax:
in_array(search, array, type)
Parameter Values:Parameter Description search Clearly specified what to search into an array (REQUIRED). array It specifies the elements of an array to search (REQUIRED). type Once the parameter were set to TRUE, then in_array function will search a string and its specific type in the array elements (OPTIONAL).
Technical Details:Return Value: The return value could return TRUE once the value is already in the array or return FALSE once not. PHP Version: PHP 4.2 or higher could be the best version – Where the search parameter can be on the array. PHP Changelog: 4+ version or higher.
First example:
<?php
$people = array("Adones", "Jude", "Paul", "Glenn");
if (in_array("Jude", $people)){
echo "Name found in the array";
}
else{
echo "Name not found in the array";
}
?>Output:
Name found in the array
Second example:
<?php
$programmer = array("Jude", "Glenn", "Adones", "Paul", 26);
if (in_array("26", $programmer, TRUE)){
echo "Match found"."\n";
}
else{
echo "Match not found"."\n";
}
if (in_array("Glenn",$programmer, TRUE)){
echo "Match found"."\n";
}
else{
echo "Match not found"."\n";
}
if (in_array(26,$programmer, TRUE)){
echo "Match found"."\n";
}
else{
echo "Match not found"."\n";
}
?>Output:
Match not found Match found Match found
What is the difference between in_array and Array_search?
The main difference between in_array and array_search is that in_array function only returns TRUE or FALSE based on the result of searching if they exist in an array. While the array_search() function usually returns a value, either a key or an index using a conditional statement.
How to use PHP in_array with associative array?
To use PHP in_array with an associated array, we can use the following code as a function to get the associated array. Just always keep in mind that the key value is case-sensitive manner and cannot be accessed anywhere on the entire array of elements.
Example:
<?php
function is_in_array($array, $key, $key_value){
$within_array = 'no';
foreach( $array as $k=>$v ){
if( is_array($v) ){
$within_array = is_in_array($v, $key, $key_value);
if( $within_array == 'yes' ){
break;
}
} else {
if( $v == $key_value && $k == $key ){
$within_array = 'yes';
break;
}
}
}
return $within_array;
}
$test = array(
0=> array('ID'=>1, 'programmerName'=>"Glenn"),
1=> array('ID'=>2, 'ProgrammerName'=>"Jude")
);
print_r(is_in_array($test, 'programmerName', 'Glenn'));
?>Output:
yes
Using in_array for multi dimensional arrays
The in_array In PHP can only be called on a single dimensional array. In order to be used, we need to loop over each (sub array) and execute in_array on each element.
Further, based on what I observed, the function is only for a (2 dimensional array). If there will be instances that you have more nested arrays, I will recommend a recursive version on that matter to check if a value exists.
Example:
<?php
$array = array(
"0" => array(
"programmerName" => "Jude",
"0" => "Jude"
),
"1" => array(
"programmerName" => "Glenn",
"0" => "Glenn"
),
"2" => array(
"programmerName" => "Adones",
"0" => "Adnoes"
)
);
$searchprogrammer = "Glenn";
foreach($array as $v) {
if ($v['programmerName'] == $searchprogrammer) {
$found = true;
}
}
echo (isset($found) ? 'Programmer name found!' : 'search failed');
?>Output:
Programmer name found!
in_array for a combo value (‘test’,’value’)
if (
array_key_exists('test', $array) && $array['test'] == 'value' // Has test => value
||
in_array(array('test', 'value'), $array) // Has [test, value] and strict mode data types
) {
// Found
}Php in_array find value by key
in_array($id, array_column($array, 'id'))
More About Array
- PHP array_merge With Detailed Explanation
- PHP Array Iterator with Example Program
- PHP Array_Keys With Example Programs
- PHP Array Search With Advanced Example
- PHP Array_Walk With Advanced Example
Summary
In summary, you have learned about PHP in_array. This article also discussed what is in_array PHP, what is the difference between in_array and Array_search, how to use PHP in_array with an associative array, using in_array for multidimensional arrays, in_array for a combo value (‘test’, ‘value’) and PHP in_array find value by key.
I hope this lesson has helped you learn a lot. Check out my previous and latest articles for more life-changing tutorials which could help you a lot.

