阅读量:0
是的,在PHP中,in_array()
函数可以用于在多维数组中查找值。但是,您需要使用递归方法来遍历多维数组。以下是一个示例:
function in_array_recursive($value, $array) { $found = false; foreach ($array as $key => $element) { if (is_array($element)) { $found = in_array_recursive($value, $element); if ($found) { break; } } else { if ($element == $value) { $found = true; break; } } } return $found; } // 示例多维数组 $array = [ 'first_level' => [ 'sub_level_1' => 'value_1', 'sub_level_2' => 'value_2', ], 'second_level' => [ 'sub_level_3' => 'value_3', 'sub_level_4' => 'value_4', ], ]; // 查找值 $value_to_find = 'value_3'; $result = in_array_recursive($value_to_find, $array); if ($result) { echo "Value found in the array."; } else { echo "Value not found in the array."; }
在这个示例中,我们定义了一个名为 in_array_recursive
的函数,它接受一个值和一个数组作为参数。函数遍历数组的每个元素,如果元素是数组,它会递归地调用自身。如果找到所需的值,函数返回 true
,否则返回 false
。