Php 可变会话数组上的循环
构建一个购物车,该购物车将所选购物车项目存储在会话数组中,直到结帐。数组存储为:$\u会话['cart']['items']['item number']…->子数组字段,如数量、SKU等 输出如下图所示,我试图弄清楚如何循环所有子数组QUANTITY字段,以获得购物车计数中的总项目数。但是,由于数组键的“item number”部分对于添加到购物车中的每个新产品/不同产品都会发生变化,因此我不知道如何在foreach循环中使用通配符来表示键名称的该部分。只是为了查看我尝试过的任何输出:Php 可变会话数组上的循环,php,arrays,for-loop,foreach,session-variables,Php,Arrays,For Loop,Foreach,Session Variables,构建一个购物车,该购物车将所选购物车项目存储在会话数组中,直到结帐。数组存储为:$\u会话['cart']['items']['item number']…->子数组字段,如数量、SKU等 输出如下图所示,我试图弄清楚如何循环所有子数组QUANTITY字段,以获得购物车计数中的总项目数。但是,由于数组键的“item number”部分对于添加到购物车中的每个新产品/不同产品都会发生变化,因此我不知道如何在foreach循环中使用通配符来表示键名称的该部分。只是为了查看我尝试过的任何输出: for
foreach($_SESSION['cart']['items']['*']['quantity'] AS $key => $value) {echo $value;}
数组的存储/输出方式如下:
[cart] => Array
(
[items] => Array
(
[RIF12345] => Array
(
[SKU] => RIF12345
[Brand] => Freemal
[Model] => AR3456BA
[Price] => 1230.55
[SalePrice] => 0.00
[Stock] => 12
[quantity] => 2
)
[11111111] => Array
(
[SKU] => 11111111
[Brand] => Marks
[Model] => 546454
[Price] => 6000.00
[SalePrice] => 4500.50
[Stock] => 15
[quantity] => 1
)
)
)
我从错误的方法接近这个循环吗?我如何编写这个foreach循环来完成我要做的事情。如果您有任何帮助,我们将不胜感激。这方面如何:
foreach ($_SESSION['cart']['items'] as $ItemNumber => $Item)
{$quantity+= $Item['quantity'];}
echo $quantity;
给我错误提示:注意:未定义变量:数量-但它确实输出了正确的总数3-它如何从$quantity输出正确的总数,但告诉我它是未定义的?是因为我没有在循环之前声明它为NULL还是什么?可能吧。请在之前尝试执行
$quantity=0