Php CodeIgniter中的自定义购物车类显示意外行为

Php CodeIgniter中的自定义购物车类显示意外行为,php,codeigniter,Php,Codeigniter,我正在代码点火器中开发一个定制购物车。添加新项目没有问题。但是,如果我添加了一个现有的项目,而不是增加购物车中的项目数量,那么什么也不会发生。我只是不知道我在哪里错过了它!这是我的密码: 澄清一点 假设我将商品(name=rayban,quanity=2,price=2)添加到购物车,然后再次添加 项目(名称=雷班,数量=3,价格=20) 我希望购物车中的商品是(名称=Ray Ban,数量=5,价格=20) 但事实并非如此。提前谢谢 Test.php <?php class Test ex

我正在代码点火器中开发一个定制购物车。添加新项目没有问题。但是,如果我添加了一个现有的项目,而不是增加购物车中的项目数量,那么什么也不会发生。我只是不知道我在哪里错过了它!这是我的密码:

澄清一点

假设我将商品(name=rayban,quanity=2,price=2)添加到购物车,然后再次添加 项目(名称=雷班,数量=3,价格=20)

我希望购物车中的商品是(名称=Ray Ban,数量=5,价格=20)

但事实并非如此。提前谢谢

Test.php

<?php class Test extends CI_Controller{


function __construct(){

    parent::__construct();

}


function index(){

    $this->load->library('Mycart');

    $item = array(

                     array(
                                        'item'      => 'Mango Fruity',
                                        'price'     => '30',
                                        'quantity'  =>  2

                        ),

                     array(
                                        'item'      => 'Mango Fruitym',
                                        'price'     => '300',
                                        'quantity'  =>  4

                        ),

                     array(
                                        'item'      => 'Mango Fruity',
                                        'price'     => '30',
                                        'quantity'  =>  3

                        )                           

        );

    $this->mycart->add_item($item);


}



} 

我想你忘了添加$this->ci->session->set\u userdata($this->cart\u items);
因此,您不会在会话中保存购物车。
尝试添加

echo "<pre>";print_r($this->cart_items);exit;   
以前

echo”“;打印($this->cart\u项目);出口

在foreach循环中使用对变量的引用成功了

foreach($this->cart\u项目为$cart\u项目){

//代码在这里


}

为什么不使用购物车库。。有什么原因吗?我想开发一个通用的购物车,也可以用于其他OOP项目。另外,当你创建一些东西时,它会给你一种很好的感觉:)我只是好奇为什么这里的数量没有增加:$cart_item['quantity']+=$item['quantity'];这很奇怪,因为我还尝试了$cart_item['quantity']=5。但它也不起作用。如果条件满足,谢谢你的评论。但session在这里没什么事可做。如果在购物车中遇到两个相同的项目,则应添加数量,而不是重复项目。但事实并非如此。我正试图找出原因。
$this->ci->session->set_userdata($this->cart_items); 
echo "<pre>";print_r($this->cart_items);exit;