2016-02-11 90 views
0

我不确定是否有人可以在这里帮助,但我只是做简单的计算,使用PHP来获得购物车的总价值。PHP:计算结束了0?

但是,我现在的问题是,有时总是这样的:

£10.50 or £10.60 etc etc.. 

但出于某种原因PHP的值变化10.5 or 10.6等等

是有什么我需要专门阻止这种情况的发生?

我不知道,如果你们需要看我的计算,但正如我所说的它的一个非常简单的计算,像这样:

$pricetotal = $price * $each_item['qty']; 
$cartTotal = $pricetotal + $cartTotal; 

任何帮助将不胜感激..

编辑:

我已经试过这样:

setlocale(LC_MONETARY, en_GB); 
$cartTotal = $cartTotal; 
$cartTotal = money_format(LC_MONETARY, $cartTotal); 

但这似乎并没有工作!它改变了值9.50 to 4

+1

http://php.net/manual/en/function.money-format.php – AbraCadaver

+0

'的var_dump($ cartTotal)'在进行money_format调用之前。 –

+0

声明是什么$ cartTotal = $ cartTotal;做? – Svea

回答

2

使用money_format:

echo money_format('%.2n', $cartTotal); 

如果由于某种原因,你的本地格式没有设置,你可以用

setlocale(LC_MONETARY, en_GB); 

这是大不列颠此之前 - 你可以改变它到你的个人区域。

作为参考,手册中有非常多的例子为如何格式货币:http://php.net/manual/en/function.money-format.php

+0

谢谢。我开始考虑设置语言环境,并在打字时将两者混合在一起。 – kainaw