Reputation: 113
I am trying to merge array in key-value format but unfortunately, I couldn't get the result what I need. by the print following array, I get the following result.
$material = array_merge($dataArrMaterial,$dataTotalMaterialQty);
_print($material);
Array(
[0] => Array
(
[material_name] => 1041
[material_qty] => 30
)
[1] => Array
(
[material_name] => 1046
[material_qty] => 10
)
[3] => Array
(
[material_qty_req] => 90
)
[4] => Array
(
[material_qty_req] => 30
)
)
but i want the result like this
Array(
[0] => Array
(
[material_name] => 1041
[material_qty] => 30
[material_qty_req] => 90
)
[1] => Array
(
[material_name] => 1046
[material_qty] => 10
[material_qty_req] => 30
)
Thanks in advance
Upvotes: 0
Views: 45
Reputation: 1364
You have to loop the first array and then use array_merge to merge multidimensional array.
$result= [];
foreach($dataArrMaterial as $key => $value){
$result[$key] = array_merge($dataArrMaterial[$key], $dataTotalMaterialQty[$key]);
}
print_r($result);
Upvotes: 0
Reputation: 1246
you can use foreach()
method of php.
foreach($dataArrMaterial as $key=> $value){
$data[] = array(
'material_name'=> $value['material_name'],
'material_qty'=> $value['material_qty'],
'material_qty_req'=> $dataTotalMaterialQty[$key]['material_qty_req'],
);
}
Upvotes: 1