<?php
$array1 = array (
0 =>
array (
'id' => 4,
'day_of_week' => 'sun',
'description' => 'suntestdescription',
'status' => 0,
'date' => '2019-01-11'
),
1 =>
array (
'id' => 5,
'day_of_week' => 'mon',
'description' => 'montestdescription',
'status' => 0,
'date' => '2019-01-11'
)
);
$array2 = array (
0 =>
array (
'id' => 1,
'day_of_week' => 'mon',
'description' => 'monupdatedtestdescription',
'status' => 1,
'date' => '2019-01-11'
)
);
$array1 = array_map(function ($v) use ($array2) {
if (($k = array_search($v['day_of_week'], array_column($array2, 'day_of_week'))) !== false && $array2[$k]['status'] == 1)
return $array2[$k];
else
return $v;
}, $array1);
print_r($array1);
preferences:
23.83 ms | 407 KiB | 5 Q