我在使用array_merge
函数处理数组时遇到一些问题。这是一个示例:
$first_array = [
8 => [
'name' => "Hershey's Chocolate Milk Shake",
'code' => 8 ,
'price' => 29.00,
'quantity' => 1,
'image' => "Hersheys_Chocolate_Milk_Shake.jpg",
'percentage_discount' => 0,
'offer_mrp' => 0,
]
];
$second_array = [
20 => [
'name' => 'Kissan Mixed Fruit Jam 700g',
'code' => 20,
'price' => 215.00,
'quantity' => 1,
'image' => 'Kissan Mixed Fruit Jam 700g.jpg',
'percentage_discount' => 0,
'offer_mrp' => 0
]
];
$first_array = array_merge($first_array, $second_array);
print_r($first_array);
结果是:
Array (
[0] => Array (
[name] => Hershey's Chocolate Milk Shake
[code] => 8
[price] => 29.00
[quantity] => 1
[image] => Hersheys_Chocolate_Milk_Shake.jpg
[percentage_discount] => 0
[offer_mrp] => 0
)
[1] => Array (
[name] => Kissan Mixed Fruit Jam 700g
[code] => 20
[price] => 215.00
[quantity] => 1
[image] => Kissan Mixed Fruit Jam 700g.jpg
[percentage_discount] => 0 [offer_mrp] => 0
)
);
但是我希望它是:
Array (
[8] => Array (
[name] => Hershey's Chocolate Milk Shake
[code] => 8
[price] => 29.00
[quantity] => 1
[image] => Hersheys_Chocolate_Milk_Shake.jpg
[percentage_discount] => 0
[offer_mrp] => 0
)
[20] => Array (
[name] => Kissan Mixed Fruit Jam 700g
[code] => 20
[price] => 215.00
[quantity] => 1
[image] => Kissan Mixed Fruit Jam 700g.jpg
[percentage_discount] => 0 [offer_mrp] => 0
)
)
array_merge()
重新编号数字键。您应该改用运算符+
。
$first_array = $first_array + $second_array;
输出与您想要的完全相同。