如何在array_sum
循环中乘以foreach
的结果?
示例:我的product1的值为10,product 2的值为20.每个产品都购买两次:我需要(10 + 20)* 2 = 60.我尝试了以下内容:
($number[$key]) * (array_sum($totprod[$key]))
但这不起作用(result = blank)
。
感谢您的帮助
这是我的foreach($ number = quantity)
foreach ($number as $key => $value){
$total[$key] = array($product1[$key], $product2[$key]);
echo "<pre>Quantity " . $number[$key] . "Price product1 " . $product1[$key] . " Price product2 " . $product2[$key] . " = Total price " . $number[$key] * array_sum($total[$key]) . "</pre>";
}
答案 0 :(得分:0)
我不认为总和是最好的方法 (10 + 20)* 2 = 2 * 10 + 2 * 20
您最好只计算每种产品的总数,并将所有结果汇总,因为它适用于一般情况(1 productX + 6productY)。
现在一般来说,处理金钱,你应该避免使用array_sum和所有php原生数学运算符,因为你可能会有一些惊喜,例如总增值税!=所有产品增值税的总和。 处理金钱时,或必须控制精度时,请使用bcmath http://php.net/manual/en/book.bc.php