<?php
$arr = [
1,
2,
[
[
'one' => '1',
'two' => 2
]
]
];
function array_search_recursive_pair(array $array, $key, $value, $strict = false)
{
foreach (new RecursiveIteratorIterator(new ParentIterator(new RecursiveArrayIterator($array))) as $leaf_array) {
if (array_key_exists($key, $leaf_array)) {
if ($strict) {
return $leaf_array[$key] === $value;
} else {
return $leaf_array === $value;
}
}
}
return false;
}
var_dump(array_search_recursive_pair($arr, 'one', 1));
var_dump(array_search_recursive_pair($arr, 'one', 1, true));
preferences:
45.48 ms | 402 KiB | 5 Q