I have two multidimensional arrays
$array1 = Array (
[a1] => Array (
[a_name] => aaaaa
[a_value] => aaa
)
[b
function recursive_array_intersect_key(array $array1, array $array2) {
$array1 = array_intersect_key($array1, $array2);
foreach ($array1 as $key => &$value) {
if (is_array($value) && is_array($array2[$key])) {
$value = recursive_array_intersect_key($value, $array2[$key]);
}
}
return $array1;
}
Demo here.