У меня есть два многомерных массива с таким же количеством ключей, что и ниже
Array
(
[2012035] => Array
(
[first_name] => ABC
[last_name] => DEF
)
[2012045] => Array
(
[first_name] => GHI
[last_name] => JKL
)
[2012046] => Array
(
[first_name] => MNO
[last_name] => PQR
)
[2012050] => Array
(
[first_name] => STU
[last_name] => VWX
)
)
а также
Array
(
[2012035] => Array
(
[01-07-2015] => 123
[02-07-2015] => 456
)
[2012045] => Array
(
[01-07-2015] => 789
[02-07-2015] => 101112
)
[2012046] => Array
(
[01-07-2015] => 131415
[02-07-2015] => 161718
)
[2012050] => Array
(
[01-07-2015] => 192021
[02-07-2015] => 222324
)
)
Теперь я хочу, чтобы результат был ниже
Array
(
[2012035] => Array
(
[first_name] => ABC
[last_name] => DEF
[01-07-2015] => 123
[02-07-2015] => 456
)
[2012045] => Array
(
[first_name] => GHI
[last_name] => JKL
[01-07-2015] => 789
[02-07-2015] => 101112
)
[2012046] => Array
(
[first_name] => MNO
[last_name] => PQR
[01-07-2015] => 131415
[02-07-2015] => 161718
)
[2012050] => Array
(
[first_name] => STU
[last_name] => VWX
[01-07-2015] => 192021
[02-07-2015] => 222324
)
)
Я могу сделать это с помощью foreach в PHP.
Но есть ли встроенная функция PHP, которая может выполнять эту работу без использования foreach?
Я думаю, это может сработать для вас:
$arr_1 = array(333 => array('a1' => 1));
$arr_2 = array(333 => array('a2' => 2), 444 => array('a3' => 3));
$arr_res = array_replace_recursive($arr_1, $arr_2);
var_dump($arr_res);
array_merge_recursive
.array_merge_recursive
неarray_merge_recursive
, но с простым циклом forarray_merge_recursive
определенно является одним из возможных решений.