Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 可变会话数组上的循环_Php_Arrays_For Loop_Foreach_Session Variables - Fatal编程技术网

Php 可变会话数组上的循环

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

构建一个购物车,该购物车将所选购物车项目存储在会话数组中,直到结帐。数组存储为:$\u会话['cart']['items']['item number']…->子数组字段,如数量、SKU等

输出如下图所示,我试图弄清楚如何循环所有子数组QUANTITY字段,以获得购物车计数中的总项目数。但是,由于数组键的“item number”部分对于添加到购物车中的每个新产品/不同产品都会发生变化,因此我不知道如何在foreach循环中使用通配符来表示键名称的该部分。只是为了查看我尝试过的任何输出:

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