数组何并

下雨的声音丶 2016-08-10 03:34:09
Array
(
[0] => Array
(
[goods_id] => 590
[goods_num] => 1
[goods_pay_price] => 2000.00
)

[1] => Array
(
[goods_id] => 626
[goods_num] => 2
[goods_pay_price] => 2000.00
)

[2] => Array
(
[goods_id] => 628
[goods_num] => 1
[goods_pay_price] => 1000.00
)

[3] => Array
(
[goods_id] => 628
[goods_num] => 2
[goods_pay_price] => 2000.00
)

[4] => Array
(
[goods_id] => 626
[goods_num] => 2
[goods_pay_price] => 2000.00
)

)
怎么快速把这个数组合并起来 ,相同goods_id 的goods_num和goods_pay_price分别加起来
...全文
131 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2016-08-10
  • 打赏
  • 举报
回复
$a = array (
  0 => 
  array (
    'goods_id' => '590',
    'goods_num' => '1',
    'goods_pay_price' => '2000.00',
  ),
  1 => 
  array (
    'goods_id' => '626',
    'goods_num' => '2',
    'goods_pay_price' => '2000.00',
  ),
  2 => 
  array (
    'goods_id' => '628',
    'goods_num' => '1',
    'goods_pay_price' => '1000.00',
  ),
  3 => 
  array (
    'goods_id' => '628',
    'goods_num' => '2',
    'goods_pay_price' => '2000.00',
  ),
  4 => 
  array (
    'goods_id' => '626',
    'goods_num' => '2',
    'goods_pay_price' => '2000.00',
  ),
);
$r = [];
array_map(function($v) use (&$r) {
  $r[$v['goods_id']]['goods_id'] = $v['goods_id'];
  @$r[$v['goods_id']]['goods_num'] += $v['goods_num'];
  @$r[$v['goods_id']]['goods_pay_price'] += $v['goods_pay_price'];
  }, $a);
print_r($r);
Array
(
    [590] => Array
        (
            [goods_id] => 590
            [goods_num] => 1
            [goods_pay_price] => 2000
        )

    [626] => Array
        (
            [goods_id] => 626
            [goods_num] => 4
            [goods_pay_price] => 4000
        )

    [628] => Array
        (
            [goods_id] => 628
            [goods_num] => 3
            [goods_pay_price] => 3000
        )

)

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧