3v4l.org

run code in 300+ PHP versions simultaneously
<?php $arr1 = array( array('date'=>"2018-06-23",'size'=>"L",'type'=>"shoes",'value_one'=>"66"), array('date'=>"2018-06-23",'size'=>"XL",'type'=>"shirt",'value_one'=>"43"), array('date'=>"2018-06-23",'size'=>"M",'type'=>"Bag",'value_one'=>"23") ); $arr2 = array( array('date'=>"2018-06-23",'size'=>"L",'type'=>"shoes",'value_two'=>"28"), array('date'=>"2018-06-23",'size'=>"XL",'type'=>"shirt",'value_two'=>"56"), array('date'=>"2018-06-23",'size'=>"M",'type'=>"Bag",'value_two'=>"14"), array('date'=>"2018-06-23",'size'=>"S",'type'=>"Cap",'value_two'=>"29") ); $final = $arr1; foreach ($arr2 as $value) { $flag = 0; foreach ($final as $key => $data) { if ($data['date']===$value['date'] && $data['size']===$value['size'] && $data['type']===$value['type']) { $final[$key]['value_two'] = $value['value_two']; $flag = 1; break; } } if ($flag === 0) { array_push($final, $value); } } echo "<pre>"; print_r($final);

preferences:
26.09 ms | 405 KiB | 5 Q