- array_intersect_key: documentation ( source)
- var_export: documentation ( source)
<?php
$array1 = [
'a1' => ['a_name' => 'aaaaa', 'a_value' => 'aaa'],
'b1' => ['b_name' => 'bbbbb', 'b_value' => 'bbb'],
'c1' => ['c_name' => 'ccccc', 'c_value' => 'ccc'],
];
$array2 = ['b1' => ['b_name' => 'bbbbb'], 'c1' => ['a_value' => 'aaa']];
$result = array_intersect_key($array1, $array2);
foreach ($result as $key => &$value) {
$value = array_intersect_key($value, $array2[$key]);
if (!$value) {
unset($result[$key]);
}
}
var_export($result);