3v4l.org

run code in 300+ PHP versions simultaneously
<?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);
Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.27, 8.4.1 - 8.4.14
array ( 'b1' => array ( 'b_name' => 'bbbbb', ), )

preferences:
108.22 ms | 406 KiB | 5 Q