codeigniter cart选项部分中一个元素的总和

codeigniter cart选项部分中一个元素的总和,codeigniter,cart,Codeigniter,Cart,大家好,codeigniter中的所有知识渊博的人 我正在使用codeigniter购物车系统 这是我的codeigniter购物车的结构 $data = array( 'id' => $id, 'qty' => $qty, 'price' => $price, 'name' => $name,

大家好,codeigniter中的所有知识渊博的人

我正在使用codeigniter购物车系统

这是我的codeigniter购物车的结构

$data = array(
                'id'      => $id,
                'qty'     => $qty,
                'price'   => $price,
                'name'    => $name,
                'options' => array(
                                  'picture'=>$img,
                                  'item_slug'=>$slug,
                                  'item_color'=>$color,
                                  'item_size'=>$size,
                                  'unit_price'=>$price,
                                  'order_type'=>$order_type,
                                  'product_type'=>$pro_type,
                                  'unit_discount' => 0.00,
                                  'total_discount' => 0.00,
                                  'discount_type' => '',
                                )
                                );
现在我想获得购物车的总折扣,我可以通过这样的代码片段来实现

$tot_discount = 0.00;
foreach($this->cart->contents() as $ci)
       {
          $tot_discount = floatval($tot_discount + $ci['options']['total_discount'];
       }
现在我的问题是,是否有任何内置的cart函数来获取codeigniter中选项部分的任何数字字段的总和?比如说$this->cart->total给出了购物车的总价

或者我需要使用上面的代码片段


提前感谢

在codeigniter中使用购物车库时,您需要设置购物车的一些固定参数,有些是可选的

固定参数

'id'      => $id,
'qty'     => $qty,
'price'   => $price,
'name'    => $name
'options' => array();
可选参数

'id'      => $id,
'qty'     => $qty,
'price'   => $price,
'name'    => $name
'options' => array();
实际上,选项变量包含您指定的其他特定于产品的信息,它们可能会根据您的业务需求而更改。现在我们有一个共同的函数总数,如下所述:

$this->cart->total()
如果您阅读方法定义,您会发现它使用“price”参数来获取购物车的总金额。现在,由于您在“选项”数组中声明了“总折扣”,因此有一个自定义业务需求。因此,您可以利用total方法定义创建自己的函数,如totalDiscount,因为它因产品而异