2012-09-18 64 views
0

我有一个数组被设置为$ _SESSION [“cart_array”],输出是这样的,当物品在购物车中。PHP计数阵列数量

Array ([0] => Array ([item_id] => 1 [quantity] => 6) [1] => Array ([item_id] => 2 [quantity] => 1)) 

我想创建一个foreach循环经历和计数“量”的价值观,以获得一个总车项目数,到目前为止,我有以下,但我只是无法弄清楚如何获得它变成一个字符串变量,所以我可以在其他页面上显示它。

$cartCount = array(); 
if (!isset($_SESSION["cart_array"]) || count($_SESSION["cart_array"]) < 1) { 
    $cartCount = 0; 
} else { 
    foreach ($_SESSION["cart_array"] as $each_item) { 
     //$cartCount += $each_item['quantity']; <-- commented out as not working. 
     //$cartCount[$each_item['item_id']] += $each_item['quantity']; <-- commented out as not working. 
    } 
    //Print array for debugging purposes 
    print_r($_SESSION["cart_array"]); 
} 

回答

1

这有工作:

<?php 

session_start(); 

$cartCount = 0; 
if(isset($_SESSION['cart_array']) AND is_array(@$_SESSION['cart_array'])){ 
    foreach($_SESSION['cart_array'] AS $each_item){ 
     $cartCount = $cartCount + $each_item['quantity']; 
    } 
} 

echo $cartCount; 

?>