Home > Article > Backend Development > How to detect whether there is a specified value in an array in php
3 methods: 1. Use foreach statement and "==" operator, syntax "foreach($arr as $v){if($v==specified value){//exists}}" . 2. Use in_array(), the syntax is "in_array("specified value", array)", if TRUE is returned, it exists, otherwise it does not exist. 3. Use array_search(), the syntax is "array_search("specified value", array)". If the value exists, the corresponding key name will be returned, otherwise false will be returned.
The operating environment of this tutorial: Windows 7 system, PHP version 8.1, DELL G3 computer
php detection array Are there three ways to specify a value?
Method 1: Use the foreach statement and the "==" operator
foreach statement loops through the array
In the loop body, use the "==" operator to compare whether the current element is equal to the specified value
<?php header('content-type:text/html;charset=utf-8'); $arr = array(1,"2",2,3,"4",4,5); foreach($arr as $v){ if($v==1){ echo "指定值存在<br>"; break; } } ?>
Optimize it:
<?php header('content-type:text/html;charset=utf-8'); function f($arr,$val){ $con=0; foreach($arr as $v){ if($v==$val){ $con=1; break; }else{ $con=0; } } if($con==1){ echo "指定值 $val 存在<br>"; }else{ echo "指定值 $val 不存在<br>"; } } $sites = array(1,"2",2,3,"4",4,5); f($sites,"1"); f($sites,2); f($sites,"4"); ?>
Method 2: Use in_array() function
In php , if you want to query whether a certain value exists in the array, you can directly use the built-in function in_array()
in_array() function to search whether the specified value exists in the array. Syntax format:
in_array ( $search , $array ,$strict)
Description | |
---|---|
search | Required. Specifies the value to search for in the array.|
array | Required. Specifies the array to search.|
strict | Optional. If this parameter is set to TRUE, the in_array() function checks whether the data being searched is of the same type as the value of the array.
<?php header('content-type:text/html;charset=utf-8'); function f($arr,$val){ if (in_array($val, $arr)){ echo "指定值 $val 存在<br>"; }else{ echo "指定值 $val 不存在<br>"; } } $sites = array(1,"2",2,3,"4",4,5); f($sites,"1"); f($sites,2); f($sites,6); ?>
Method 3: Use array_search() function
The array_search() function searches for a key value in the array and returns the corresponding key name. You can also use this function to query whether a certain value exists in the array. If it exists, the corresponding key name will be returned. If it does not exist, it will return false. Syntax:array_search(value,array,strict)
Description | |
---|---|
value | Required. Specifies the key value to search for in the array.|
array | Required. Specifies the array to be searched.|
strict | Optional. If this parameter is set to TRUE, the function searches the array for elements of the same data type and value. Possible values:
|
<?php header('content-type:text/html;charset=utf-8'); function f($arr,$val){ $res=array_search($val, $arr); var_dump($res); } $sites = array(1,"2",2,3,"4",4,5); f($sites,"1"); f($sites,2); f($sites,6); ?>Recommended study: "
PHP Video Tutorial"
The above is the detailed content of How to detect whether there is a specified value in an array in php. For more information, please follow other related articles on the PHP Chinese website!