在foreach循环PHP中添加数字


Add numbers in foreach Loop PHP

我有一个foreach loop,它列出了OpenCart中的许多产品。我想在一个名为$subTotal的变量中返回总数,但它只返回最后一个产品价格,如果是=++++,则所有返回错误。

更新-我应该补充一下,$product['total']单独会回显£100(而不是£100,它只是回显货币符号和数字)

<?
####
// START ***********
####
$subTotal=0;
foreach ($products as $product) {
    $subTotal=$product['total'];
?>
 <!--<?=$product['total']?>-->
<?
    $subTotal++;
}
####
// END ***********
####
?>
<?=$subTotal?>

编辑

你可以通过做到这一点

<?php 
// create vars
$x=$product['total'];
// remove pound signs etc
$x=str_replace("£", "", $x);
$x=str_replace("&pound;", "", $x);
// loop and or add to the variable subTotal
$subTotal += $x;
foreach ($products as $product) {
    $subTotal+= preg_replace('/[^'d'.]/','',$product['total']);
}
echo $subTotal;
?>

在foreach语句中

尝试$subTotal += $product['total'];

foreach ($products as $product) {
    $subTotal += $product['total'];
?>
$subTotal += $product['total'];

问题是您将$subTotal设置为等于$product['total']。您需要将$product['total']添加到$subTotal

foreach ($products as $product) {
    $subTotal=+$product['total']; ?>
}