Sometimes we need to determine whether a string exists in an array. This situation is very common in PHP. In this article, we'll demonstrate a few different ways of querying whether a character is present in an array.
Method 1: Use the in_array() function
In PHP, we can use the in_array() function to check whether a value is in an array. The syntax of this function is as follows:
bool in_array(mixed $needle, array $haystack [, bool $strict = FALSE])
The parameter $needle is the value to be found, and the parameter $haystack is The array in which to find the value. Parameter $strict is optional and defaults to FALSE. If TRUE, use strict mode to compare values.
Sample code:
//Define array
$fruits = array('apple', 'banana', 'orange', 'grape');
// Find whether the value is in the array
if (in_array('apple', $fruits)) {
echo 'apple 在数组中';
} else {
echo 'apple 不在数组中';
}
Output result :
apple in the array
Method 2: Use array_search() function
Another way to find whether a value in an array exists is to use the array_search() function. This function returns the key name of the found value, or FALSE if not found.
Sample code:
//Define array
$fruits = array('apple', 'banana', 'orange', 'grape');
// Find value
$key = array_search('orange', $fruits);
if ($key !== false) {
echo 'orange 在数组中,键为:' . $key;
} else {
echo 'orange 不在数组中';
}
Output result:
orange In the array, the key is: 2
Method 3: Use in_array() and array_search() functions in combination
Sometimes we need to use both the in_array() and array_search() functions to query the values in the array, because they can handle different situations. If you want to check if a value is in an array, you can use the in_array() function, and if you need to get the key name, you can use the array_search() function.
Sample code:
//Define array
$fruits = array('apple', 'banana', 'orange', 'grape');
// Check if the value is in the array
if (in_array('banana', $fruits)) {
// 获取键名 $key = array_search('banana', $fruits); echo 'banana 在数组中,键为:' . $key;
} else {
echo 'banana 不在数组中';
}
Output result :
banana In the array, the key is: 1
Method 4: Use foreach to loop through the array
In PHP, we can also use foreach to loop through the array to determine Whether the value is in the array. This method is less concise than the in_array() and array_search() functions, but in some cases it can be easier to understand.
Sample code:
//Define array
$fruits = array('apple', 'banana', 'orange', 'grape');
// Traverse the array
foreach ($fruits as $key => $value) {
if ($value == 'orange') { echo 'orange 在数组中,键为:' . $key; break; }
}
Output result:
orange In the array, key For: 2
Conclusion
No matter which method you use, querying whether a character exists in an array is very easy. In any case, we can use in_array() or array_search() function to check if a value is in an array. If you need to get the key name, you should use the array_search() function. Using a foreach loop to iterate over an array is also a good option if you need a more flexible control flow.
The above is the detailed content of How to check if a character exists in an array in php. For more information, please follow other related articles on the PHP Chinese website!