循环遍历变量会话数组

时间:2014-01-14 17:06:36

标签: php arrays for-loop foreach session-variables

构建一个购物车,将选定的购物车商品存储在会话数组中,直到结帐。该数组存储为:$ _SESSION [' cart'] [' items'] ['项目编号'] ... - >子数组字段,如数量,SKU等。

输出如下所示,我试图弄清楚如何遍历所有子阵列QUANTITY字段以获得购物车计数中的总项目。但是,因为'项目编号'对于添加到购物车的每个新/不同产品,数组键的一部分会发生变化,我无法弄清楚如何使用通配符来表示foreach循环中KEY名称的那一部分。只是为了看到我尝试过的任何输出:

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循环来完成我想要做的事情。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

怎么样:

foreach ($_SESSION['cart']['items'] as $ItemNumber => $Item)
 {$quantity+= $Item['quantity'];}
echo $quantity;