Php 从多维数组取消设置数组

Php 从多维数组取消设置数组,php,arrays,session,multidimensional-array,Php,Arrays,Session,Multidimensional Array,这是我的职责。我在删除和编辑购物车时遇到问题 早些时候,我在数组$id和$quantity中只有两个参数,但我必须添加$varianta,它存储例如size等 美元会话['cart']的Insert和foreach工作起来就像一个符咒,但正如我所说的,删除和更新不是 函数addToCart() 函数editCart() 函数removeFromCart() 如果有人告诉我如何接近我正在努力实现的目标,我将不胜感激 谢谢。因为您没有在$\u会话['cart']中将$id设置为索引,请尝试此操作

这是我的职责。我在删除和编辑购物车时遇到问题

早些时候,我在数组$id和$quantity中只有两个参数,但我必须添加$varianta,它存储例如size等

美元会话['cart']的Insert和foreach工作起来就像一个符咒,但正如我所说的,删除和更新不是

函数addToCart()

函数editCart()

函数removeFromCart()

如果有人告诉我如何接近我正在努力实现的目标,我将不胜感激


谢谢。

因为您没有在
$\u会话['cart']
中将
$id
设置为索引,请尝试此操作

  public static function addToCart($data) {

        $id = $data['id']; //id
        $quantity = $data['qty']; //qty
        $varianta = $data['varianty']; //varianta

        //overíme, zda $_SESSION['cart'] 
        if(!isset($_SESSION['cart'])) {
            $_SESSION['cart'] = array(); 
        }

        $_SESSION['cart'][$id] = array(
            'quantity' => $quantity,
            'varianta' => $varianta
        )); 

    }

由于您正在使用array_push$\会话['cart'][$id]不存在。存在的是类似于$_SESSION['cart'][0][$id]的东西谢谢,非常有效,但如何编辑数量?
public static function editCart($data) {
    //edit quantity +-
}
public static function removeFromCart($id) {
        unset($_SESSION['cart'][$id]); //DOESNT WORK
    }
  public static function addToCart($data) {

        $id = $data['id']; //id
        $quantity = $data['qty']; //qty
        $varianta = $data['varianty']; //varianta

        //overíme, zda $_SESSION['cart'] 
        if(!isset($_SESSION['cart'])) {
            $_SESSION['cart'] = array(); 
        }

        $_SESSION['cart'][$id] = array(
            'quantity' => $quantity,
            'varianta' => $varianta
        )); 

    }