我有多维数组:
$products = array(
array(
'id' => 'sku_123ABC',
'qty' => 1,
'price' => 39.95,
'name' => 'T-Shirt',
),
array(
'id' => 'sku_567ZYX',
'qty' => 1,
'price' => 9.95,
'name' => 'Coffee Mug'
),
array(
'id' => 'sku_965QRS',
'qty' => 1,
'price' => 29.95,
'name' => 'Shot Glass'
)
);
我知道如何计算产品的总价格,但我需要的是折扣,看起来像这样
任意2件产品10%折扣
任意3种产品20%折扣
5 +产品30%折扣
我遇到的问题是我知道如何计算数组成员的数量,而且我也知道数量,但我知道如何通过数量或数组成员进行计数? 是否可以在$ products数组上应用此折扣并显示总价
答案 0 :(得分:1)
如果您想知道产品总数,您想要遍历数组并添加数量以获得总数
$totalProducts = 0;
foreach($products as $product){
$totalProducts += $product['qty'];
}
答案 1 :(得分:0)
根据aynber的答案,这就是如何根据添加的项目数量获得最终总成本的方法。
$totalProducts = 0;
foreach($products as $product){
$totalProducts += $product['qty'];
$totalCost += $product['price'];
}
echo $totalProducts . "<br>";
echo $totalCost . "<br>";
if ($totalProducts == 2) {
$totalCost = $totalCost - ($totalCost*.1);
} else if ($totalProducts == 3) {
$totalCost = $totalCost - ($totalCost*.2);
} else if ($totalProducts >= 5) {
$totalCost = $totalCost - ($totalCost*.3);
}
echo $totalCost;
请记住,如果您要使用一堆规则,创建switch语句可能会稍微高效一些。但有了三个,我会坚持另一个。