In PHP, there are many ways to determine whether a value is in a two-dimensional array. This article will introduce the two most commonly used methods.
Method 1: Use foreach loop to traverse
This method is more intuitive. You can use foreach loop to traverse the entire two-dimensional array, and then determine whether each sub-array contains the target value. If the target value is found, you can return true directly, otherwise it will return false after the loop ends.
The following is a code example:
function isValueInArray($array, $value) { foreach ($array as $subArray) { if (in_array($value, $subArray)) { return true; } } return false; }
This function accepts two parameters: the two-dimensional array to be queried and the target value. Inside the function, we use a foreach loop to iterate through the entire array, and use the in_array function to determine whether the target value exists in each sub-array. If the target value is found, you can return true directly, otherwise it will return false after the loop ends.
Method 2: Use the array_column function
PHP’s array_column function can return all values of the specified key from a two-dimensional array. We can use this function to get a column in a two-dimensional array, and then use the in_array function to determine whether the target value exists in the column. If it exists, it can return true, otherwise it returns false.
The following is a code example:
function isValueInArray($array, $value) { foreach ($array as $subArray) { if (in_array($value, array_column($array, 'key'))) { return true; } } return false; }
The implementation of this function is basically the same as the above function. The difference is that we use the array_column function to obtain the "key" column in the two-dimensional array, and then Use the in_array function to determine whether the target value appears in the column.
Summary
The above are two common methods to determine whether a value is in a two-dimensional array in PHP. Using a foreach loop is more intuitive, but performance may be affected when the array is large. Using the array_column function can get the specified column faster, but this function may not be supported for some older PHP versions. Therefore, a combination of considerations is needed when choosing which method to use.
The above is the detailed content of How to determine whether a value is in a two-dimensional array in PHP (two methods). For more information, please follow other related articles on the PHP Chinese website!