Php 将另一个维度添加到数组购物车中

Php 将另一个维度添加到数组购物车中,php,Php,我有一个购物车,它的工作刚刚好,但我想存储的商品类型(例如颜色,大小等) 这是一个从购物车获取物品的函数 public static function getCart() { if((isset($_SESSION['cart'])) && count($_SESSION['cart'])>0) { $ids = ""; foreach($_SESSION['cart'] as $id => $quant

我有一个购物车,它的工作刚刚好,但我想存储的商品类型(例如颜色,大小等)

这是一个从购物车获取物品的函数

public static function getCart() {
        if((isset($_SESSION['cart'])) && count($_SESSION['cart'])>0) {
            $ids = "";
            foreach($_SESSION['cart'] as $id => $quantity) {
                $ids = $ids . $id . ",";
            } 
            $ids = rtrim($ids, ',');

            $dotaz = dibi::fetchAll("SELECT * FROM eshop_products WHERE idProduct IN ({$ids})");
            return $dotaz;
        } else {
            //do nothing
        }
    }
public static function addToCart($data) {

        $id = $data['id']; 
        $quantity = $data['qty']; 
        $varianta = $data['varianty']; //THIS IS WHAT I NEED TO ADD TO SESSION ARRAY


        if(!isset($_SESSION['cart'])) {
            $_SESSION['cart'] = array();
        }


        if(isset($_SESSION['cart'][$id])) {
            $_SESSION['cart'][$id] += $quantity;
        } else {
            $_SESSION['cart'][$id] = $quantity;
        }   
    }
和向购物车添加物品的功能

public static function getCart() {
        if((isset($_SESSION['cart'])) && count($_SESSION['cart'])>0) {
            $ids = "";
            foreach($_SESSION['cart'] as $id => $quantity) {
                $ids = $ids . $id . ",";
            } 
            $ids = rtrim($ids, ',');

            $dotaz = dibi::fetchAll("SELECT * FROM eshop_products WHERE idProduct IN ({$ids})");
            return $dotaz;
        } else {
            //do nothing
        }
    }
public static function addToCart($data) {

        $id = $data['id']; 
        $quantity = $data['qty']; 
        $varianta = $data['varianty']; //THIS IS WHAT I NEED TO ADD TO SESSION ARRAY


        if(!isset($_SESSION['cart'])) {
            $_SESSION['cart'] = array();
        }


        if(isset($_SESSION['cart'][$id])) {
            $_SESSION['cart'][$id] += $quantity;
        } else {
            $_SESSION['cart'][$id] = $quantity;
        }   
    }
有什么简单的方法吗?我在谷歌上搜索了一些教程,但仍然没有成功


谢谢。

也许这是给你的一个提示:

$id = $data['id']; 
$quantity = $data['qty']; 
$varianta = $data['varianty']; //THIS IS WHAT I NEED TO ADD TO SESSION ARRAY

$cart = array();

array_push($cart, array(
  'id' => $id,
  'quantity' => $quantity,
  'varianta' => $varianta
));

我不明白。你有什么问题?只需保存
差异
值,方法与保存
购物车
时相同?