PHP在foreach中结合了array_sum和multiplication

时间:2017-02-27 14:54:41

标签: php foreach

如何在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>";   
} 

1 个答案:

答案 0 :(得分:0)

我不认为总和是最好的方法 (10 + 20)* 2 = 2 * 10 + 2 * 20

您最好只计算每种产品的总数,并将所有结果汇总,因为它适用于一般情况(1 productX + 6productY)。

现在一般来说,处理金钱,你应该避免使用array_sum和所有php原生数学运算符,因为你可能会有一些惊喜,例如总增值税!=所有产品增值税的总和。 处理金钱时,或必须控制精度时,请使用bcmath http://php.net/manual/en/book.bc.php