我有以下数组,该数组的第一项的数量为3,其余的数量为1。这些数字是动态的。
Array
(
[0] => Array
(
[id] => 39235995
[quantity] => 3
[price] => 2.81
)
[1] => Array
(
[id] => 39236029
[quantity] => 1
[price] => 2.952
)
[2] => Array
(
[id] => 39236015
[quantity] => 1
[price] => 3.333
)
[3] => Array
(
[id] => 39235997
[quantity] => 1
[price] => 2.667
)
)
如何将其更改为以下输出?那么,第一个数量为3的商品现在被分成3个数组商品,每个商品的数量都设为一个?
Array
(
[0] => Array
(
[id] => 39235995
[quantity] => 1
[price] => 2.81
)
[1] => Array
(
[id] => 39235995
[quantity] => 1
[price] => 2.81
)
[2] => Array
(
[id] => 39235995
[quantity] => 1
[price] => 2.81
)
[3] => Array
(
[id] => 39236029
[quantity] => 1
[price] => 2.952
)
[4] => Array
(
[id] => 39236015
[quantity] => 1
[price] => 3.333
)
[5] => Array
(
[id] => 39235997
[quantity] => 1
[price] => 2.667
)
)
答案 0 :(得分:2)
您可以循环遍历原始arr并将内容推入第二个数组。如果数量> 1,则可以创建一个循环,为每个数量推送项目。像这样:
if/else
请注意,代码希望您的原始数组称为$ arrA
编辑:按照评论中的建议删除了{{1}}