Array merging problem original array: $ args1 & nbsp ;=& nbsp; Array ('0' & nbsp ;=& gt; & nbsp; array ('0' & nbsp; = & gt; & nbsp; 'A', '1' & nbsp; = & gt; & nbsp; array ('0' & nbsp; = about array merging
Original array:
$args1 = Array(
'0' => array(
'0' => 'a',
'1' => array(
'0' => array ( 'col1' => 'A1', 'col2' => 0 )
)
),
'1' => array(
'0' => 'b',
'1' => array(
'0' => array ( 'col1' => 'B1', 'col2' => 1 )
)
)
);
$args2 = Array(
'0' => array(
'0' => 'a',
'1' => array(
'0' => Array ( 'col1' => 'A2', 'col2' => 0 ),
'1' => Array ( 'col1' => 'A3', 'col2' => 0 )
)
)
);
Target array:
Array(
'0' => array(
'0' => 'a',
'1' => array(
'0' => array ( 'col1' => 'A1', 'col2' => 0 ),
'1' => Array ( 'col1' => 'A2', 'col2' => 0 ),
'2' => Array ( 'col1' => 'A3', 'col2' => 0 )
)
),
'1' => array(
'0' => 'b',
'1' => array(
'0' => array ( 'col1' => 'B1', 'col2' => 1 )
)
)
);
------ Solution --------------------
$res = array();
foreach($args1 as $item) $res[$item[0]] = $item;
foreach($args2 as $item) $res[$item[0]][1] = array_merge($res[$item[0]][1], $item[1]);
print_r(array_values($res));
Array
(
[0] => Array
(
[0] =>
[1] => Array
(
[0] => Array
(
[Col1] => A1
[Col2] => 0
)
[1] => Array
(