ecshop重组购物车数据,把goods_id相同的数据重组

本文介绍了一种处理购物车中重复商品的方法,通过遍历购物车列表来去除重复的商品ID,并将相同商品的不同属性集合在一起。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    $cart_goods = get_cart_goods();
    
    $goods_arr =array();
    
     foreach($cart_goods['goods_list'] as $key=>$val)
     {
        $recid_arr = array();
        $has = in_array($val['goods_id'], $goods_arr);
        if(empty($has))
        {
            $goods_arr[]= $val['goods_id'];
            $cart_good[$key]['goods_id'] = $val['goods_id'];
            $cart_good[$key]['user_id'] = $val['user_id'];
            $cart_good[$key]['session_id'] = $val['session_id'];
            $cart_good[$key]['goods_name'] = $val['goods_name'];
            $cart_good[$key]['is_sample'] = $val['is_sample'];
            $cart_good[$key]['pid'] = $val['pid'];
            $cart_good[$key]['photo'] = $val['goods_thumb'];
            foreach($cart_goods['goods_list'] as $k=>$v)
            {
                if($v['goods_id'] == $val['goods_id'])
                {
                   
                    $recid_arr[$k]['rec_id'] = $v['rec_id'];
                    $recid_arr[$k]['goods_sn'] = $v['goods_sn'];
                    $recid_arr[$k]['product_id'] = $v['product_id'];
                    $recid_arr[$k]['market_price'] = $v['market_price'];
                    $recid_arr[$k]['goods_price'] = $v['goods_price'];
                    $recid_arr[$k]['goods_number'] = $v['goods_number'];
                    $recid_arr[$k]['goods_attr_id'] = $v['goods_attr_id'];
                    
                }
            }
            $cart_good[$key]['attr'][] = $recid_arr;
        }


     }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值