Home >Backend Development >PHP Problem >How to determine whether a certain number is in an array in php
In PHP, there are many methods to determine whether a number is in an array. This article will introduce these methods in detail, and also introduce some other array operation functions.
The in_array() function can determine whether a value is in an array. The syntax is as follows:
in_array($value, $array, $strict)
Among them, $ The value parameter indicates the value to be found, the $array parameter indicates the array to be searched, and the $strict parameter indicates whether the data type strictly matches, which can be omitted and defaults to false. Returns true if the value is found, false otherwise.
The sample code is as follows:
$fruits = array("apple", "banana", "orange"); if (in_array("apple", $fruits)) { echo "苹果在数组中存在!"; } else { echo "苹果不在数组中存在!"; }
The output result is:
苹果在数组中存在!
array_search() function Searches for the specified value in the array and returns the corresponding key name, or false if not found. The syntax is as follows:
array_search($value, $array, $strict)
Among them, the $value parameter indicates the value to be found, the $array parameter indicates the array to be searched, and the $strict parameter indicates whether the data type strictly matches, which can be omitted and defaults to false.
The sample code is as follows:
$fruits = array("apple", "banana", "orange"); $key = array_search("banana", $fruits); if ($key !== false) { echo "香蕉在数组中的键名为:" . $key; } else { echo "香蕉不在数组中存在!"; }
The output result is:
香蕉在数组中的键名为:1
If you want to find whether a certain value exists, you can use it like the following:
$fruits = array("apple", "banana", "orange"); if (array_search("orange", $fruits) !== false) { echo "橘子在数组中存在!"; } else { echo "橘子不在数组中存在!"; }
The output result is:
橘子在数组中存在!
In some cases, you need to know whether a value is in the array and Knowing its key name, you can combine the two functions in_array() and array_search() to make a judgment at the same time.
The sample code is as follows:
$fruits = array("apple", "banana", "orange"); if (in_array("banana", $fruits) && ($key = array_search("banana", $fruits)) !== false) { echo "香蕉在数组中的键名为:" . $key; } else { echo "香蕉不在数组中存在!"; }
The output result is:
香蕉在数组中的键名为:1
array_key_exists() function can To determine whether the specified key name exists in the array, the syntax is as follows:
array_key_exists($key, $array)
Among them, the $key parameter represents the key name to be found, and the $array parameter represents the array to be searched. Returns true if the key name is found, false otherwise.
The sample code is as follows:
$fruits = array("apple" => 0, "banana" => 1, "orange" => 2); if (array_key_exists("banana", $fruits)) { echo "香蕉在数组中存在!"; } else { echo "香蕉不在数组中存在!"; }
The output result is:
香蕉在数组中存在!
isset() function can To determine whether the specified key name exists in the array, the syntax is as follows:
isset($array[$key])
Among them, the $key parameter represents the key name to be found, and the $array parameter represents the array to be searched. Returns true if the key name is found, false otherwise.
The sample code is as follows:
$fruits = array("apple" => 0, "banana" => 1, "orange" => 2); if (isset($fruits["orange"])) { echo "橘子在数组中存在!"; } else { echo "橘子不在数组中存在!"; }
The output result is:
橘子在数组中存在!
Note: When using the isset() function, please note that if the value corresponding to the key name is null, it will also Returns false, so it cannot accurately determine whether a key exists in the array.
array_diff() function can find the difference between two arrays, that is, return the difference that is in the first array but not in the following array all values. Therefore, if the value to be found is used as the first array and the original array is used as the second array, and the search result is that the difference set is empty, it means that it exists in the original array.
The sample code is as follows:
$fruits = array("apple", "banana", "orange"); if (count(array_diff(array("banana"), $fruits)) == 0) { echo "香蕉在数组中存在!"; } else { echo "香蕉不在数组中存在!"; }
The output result is:
香蕉在数组中存在!
preg_grep() function can Use a regular expression to match array elements and return all matching elements. Therefore, if the value to be found is used as a regular expression and the original array is used as a parameter, and the search result is a non-empty array, it means that it exists in the original array.
The sample code is as follows:
$fruits = array("apple", "banana", "orange"); if (count(preg_grep("/banana/", $fruits)) > 0) { echo "香蕉在数组中存在!"; } else { echo "香蕉不在数组中存在!"; }
The output result is:
香蕉在数组中存在!
The above are various methods for judging whether a certain number is in an array in PHP. We can use it according to the actual situation. You need to choose a method that suits you. In addition, there are many other array operation functions, such as array_merge(), array_slice(), array_reverse(), etc. We can choose different functions to use according to different needs.
The above is the detailed content of How to determine whether a certain number is in an array in php. For more information, please follow other related articles on the PHP Chinese website!