从会话购物车数组中取消设置会话项数组


Array ( 
   [0] => Array ( 
      [0] => Array ( 
         [subject] => Computer [price] => 33.00
         [quantity] => 1 
         [total] => 33
         [level] => Array (
            [CSA] => 1
            [CSB] => 2
         )
      )
   )
   [1] => Array (
      [0] => Array (
         [subject] => English
         [price] => 33.00
         [quantity] => 25
         [total] => 825
         [level] => Array (
            [Eintro] => 1
            [EA] =>
            [EB] => 1
         )
      )
   )

伙计们,我有一个像上面这样的会话推车阵列。如果主题计算机以及与主题计算机相关的价格,数量,总数和级别,如何删除该项目。

我知道我必须使用未设置的会话。但是如何仅为"计算机"行取消设置会话数组,而不会影响购物车中的其他项目数组?

var_export($session_cart);
array ( 
   0 => array ( 
      0 => array ( 
         'subject' => 'Computer', 
         'price' => '33.00',
         'quantity' => 1,
         'total' => 33, 
         'level' => array ( 
            'CSA' => '1', 
            'CSB' => '2',
         ),
      ),
   ), 
   1 => array ( 
      0 => array ( 
         'subject' => 'English',
         'price' => '33.00',
         'quantity' => 25,
         'total' => 825,
         'level' => array (
            'EA' => '1',
            'EB' => '1',
         ), 
      ), 
   ),

我不确定为什么产品在另一个数组中的数组中,但这个想法是你遍历所有产品并检查主题是否为计算机。如果是,则按当前所在的索引取消设置数组的元素。

像这样:

for ($i=0;$i<count($_SESSION['cart']);$i++)
   if ($_SESSION['cart'][$i]['subject'] == 'Computer') unset($_SESSION['cart'][$i])

最新更新