Home > Article > Backend Development > How to detect whether a character exists in an array in php? Brief analysis of three methods
1. Preface
Determining whether a character exists in an array is one of the problems we often encounter when writing programs using PHP. This problem is very simple, but there are many ways to solve it in our actual applications. In this article, I will share three implementation methods for your reference.
2. Method 1: Use the in_array() function
The in_array() function is a core function of PHP and can be used to find whether a value exists in an array. The format of this function is as follows:
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
Among them, $needle represents the value to be found, and $haystack represents The array to be searched, $strict indicates whether to use the comparison type (the default is FALSE, which means only the comparison value is used).
We can use the following code to determine whether a character exists in the array:
$char = 'a';
$arr = array('a', 'b', 'c', 'd');
if (in_array($char, $arr)) {
echo 'Exist';
} else {
echo 'Not Exist';
}
here $char represents the character to be found and $arr represents the array to be checked. If the returned result is TRUE, it means that the character exists in the array, otherwise it does not exist.
3. Method 2: Use array_search() function
array_search() function is another core function of PHP, which can be used to search for a given value in an array. If it is successfully found, Returns the key name. The format of this function is as follows:
mixed array_search ( mixed $needle , array $haystack [, bool $strict = FALSE ] )
Among them, $needle represents the value to be found, and $haystack represents The array to be searched, $strict indicates whether to use the comparison type (the default is FALSE, which means only the comparison value is used).
We can use the following code to determine whether a character exists in the array:
$char = 'a';
$arr = array('a', 'b', 'c', 'd');
if (array_search($char, $arr) !== false) {
echo 'Exist';
} else {
echo 'Not Exist';
}
$char here represents the character to be found, and $arr represents the array to be checked. If the returned result is not FALSE, it means that the character exists in the array, otherwise it does not exist.
4. Method 3: Use in_array() and array_map() functions
If we need to check whether a string exists multiple times in the array and need to count the number of occurrences, we You can use the in_array() function in conjunction with the array_map() function to handle this. The array_map() function is an array function in PHP that applies a callback function to each element of the array and returns an array containing the new element. The format of this function is as follows:
array array_map ( callable $callback , array $array1 [, array $... ] )
Among them, $callback represents the callback to be applied to the array elements function, $array1 represents the array to which the callback function is to be applied.
We can use the following code to determine whether a character exists in the array and count its occurrences:
$char = 'a';
$arr = array('a' , 'b', 'c', 'd', 'a', 'a');
$count = count(array_filter(array_map(function ($value) use ($char) {
return ($value == $char) ? true : false;
}, $arr)));
echo 'Exist ' . $count . ' times';
$char here represents the character to be found, $arr represents the character to be checked array. Use the array_map() function to return an array containing true or false, then use the array_filter() function to filter out true values, and finally use the count() function to count the number of occurrences.
5. Summary
The above three methods each have their own advantages and disadvantages. Which method to choose needs to be judged based on the actual problem. In actual programming, we need to choose the optimal solution based on specific problems to improve the efficiency and readability of the program. No matter which method is used, we need to pay attention to the readability and maintainability of the code to facilitate future code modification and expansion.
The above is the detailed content of How to detect whether a character exists in an array in php? Brief analysis of three methods. For more information, please follow other related articles on the PHP Chinese website!