Die folgenden Arrays haben die gleiche GID und müssen akkumuliert werden. Diejenigen mit unterschiedlicher GID werden direkt ohne Operation angezeigt.
Array
(
[0] => Array
(
[id] => 1
[no] => WF20170001
[wid] => 1
[gid] => 1
[num] => 4
[price] => 2.55
[amount] => 10.20
[buyer] => 顾文君
[invoice] => 123456789
[date] => 2017-03-28
[remarks] => 测试数据
[cid] => pc001
[class] => 办公用品
[name] => 笔记本电脑
[type] => Acer Aspire E1-410G
[unit] => 台
[warehouse_name] => 办公用品仓库
)
[1] => Array
(
[id] => 3
[no] => WF20170001
[wid] => 1
[gid] => 5
[num] => 5
[price] => 100.00
[amount] => 500.00
[buyer] => 顾文君
[invoice] => 1231241
[date] => 2017-04-14
[remarks] => 入库测试
[cid] => tf001
[class] => 办公用品
[name] => 打印机碳粉
[type] => 88A
[unit] => 支
[warehouse_name] => 办公用品仓库
)
[2] => Array
(
[id] => 4
[no] => WF20170001
[wid] => 1
[gid] => 2
[num] => 1
[price] => 4500.00
[amount] => 4500.00
[buyer] => 张秀珍
[invoice] => 4558895
[date] => 2017-04-09
[remarks] => 入库测试
[cid] => pc002
[class] => 办公用品
[name] => 笔记本电脑
[type] => Acer Aspire E5-571G-58WT
[unit] => 台
[warehouse_name] => 办公用品仓库
)
[3] => Array
(
[id] => 5
[no] => WF20170002
[wid] => 1
[gid] => 3
[num] => 1
[price] => 88.00
[amount] => 88.00
[buyer] => 顾文君
[invoice] => 556789
[date] => 2017-04-09
[remarks] => 测试数据
[cid] => ow
[class] => 办公用品
[name] => 万用表
[type] => 万用表
[unit] => 台
[warehouse_name] => 办公用品仓库
)
[4] => Array
(
[id] => 12
[no] => WF20170001
[wid] => 1
[gid] => 1
[num] => 1
[price] => 2.55
[amount] => 2.55
[buyer] => 顾文君
[invoice] => 53412312
[date] => 2017-06-05
[remarks] => 无
[cid] => pc001
[class] => 办公用品
[name] => 笔记本电脑
[type] => Acer Aspire E1-410G
[unit] => 台
[warehouse_name] => 办公用品仓库
)
)
你这是数据库里的数据查出来的吧?是的话直接用sql语句对gid去重,然后用sum()对num进行累加,就可以得出结果了。