Как мы можем проверить наличие определенного массива внутри массива?
Например, у нас есть многомерный массив:
$arr = array(
array(1,2,3),
'12',
true,
4,
array(
'name1' => array(1,2),
array(
'some1' => array(99,98,96),
4
),
array(4,4)
)
);
И мы хотим проверить массив (99,98,96), существует ли он внутри нашего $ arr?
Проверьте этот код из источника array_search
function recursive_array_search($needle,$haystack) {
foreach($haystack as $key=>$value) {
$current_key=$key;
if($needle===$value OR (is_array($value) && recursive_array_search($needle,$value) !== false)) {
return $current_key;
}
}
return false;
}
Надеюсь это сработает
Попробуй это:
function findRecursive($arr, $find)
{
foreach ($arr as $match)
{
if (is_array($match))
{
if ($match == $find)
{
return true;
} else
{
if (findRecursive($match, $find))
{
return true;
}
}
}
}
return false;
}