PHP 5 中的多维数组

Multidimensional array in PHP 5

我有一个简单的问题,但我做不到。

我的系统中有这个多维数组:

array (size=5)
  'id_cli' => string '13' (length=2)
  'login_cli' => string 'userlogin' (length=10)
  'senha_cli' => string 'userpass' (length=3)
  'cli_nome' => string 'username' (length=16)
  'cart' => 
    array (size=3)
      'id' => int 48
      'tamanho' => string 'G' (length=1)
      'qtde' => int 1

这个数组保存在我的$_SESSION中。购物车钥匙用于保存我的购物车产品。在上面的例子中,我有 1 个产品。

我需要将新产品保存在我的会话数组购物车中,但我做不到。我尝试插入的每个新产品都会保存在第一个产品之上,而不是插入。

我正在这样做:

但它不起作用。我该怎么做才能在 $_SESSION['cart'] 中插入新数组?

我需要做什么才能删除此 $_SESSION['cart'] 数组中的特定产品?

谢谢, 马塞洛.

您需要将新产品作为数组的数组插入。像这样尝试:

$_SESSION['cart'][] = array("id" => $id_produto, "tamanho" => $tamanho_produto, "qtde" => 1);

您可以使用 array_push($_SESSION['cart'], $newElement); 将数组元素插入现有数组。

另一种方法是 $_SESSION['cart'][] = $newElement;

要删除特定元素,您可以使用以下逻辑

 $arrayKey=array_search($arrayKeyName,$_SESSION['cart']);
 if($arrayKey!==false) unset($_SESSION['cart'][$arrayKey]);

另一种方法

foreach($_SESSION['cart'] as $k => $v) {
  if($v == $arrayKeyName)
    unset($_SESSION['cart'][$k]);
}