2012-07-16 51 views
8

简单数学:PHP中,添加尾随零,如果数字是整数

$a=$b/$c; echo $a; 

如果$ b等于到123.00和$ c等于1,则$一个变为123

如果$ b为123.50 ,$ c是1,$ a是123.50。但在前一种情况下,我想$ a是123.00。

可以测试$ a是否有任何非零小数部分,然后根据需要添加尾随零。

但我正在寻找PHP功能来做同样的事情。可能?

编辑:

如果我不想从number_format有逗号?

+0

怎么样楼()和使用number_format()输出? – 2012-07-16 18:59:30

+0

在一个表格行中,其他数字是十进制的。所以我也想用十进制格式的这个数字。 – 2012-07-16 19:09:38

+0

[将字符串转换为数字而不丢失小数](http://stackoverflow.com/questions/30677082/convert-strings-to-numbers-without-losing-decimals) – 2015-06-06 09:32:09

回答

23

使用sprintf("%0.2f",$a);docs

+4

+1对于这里唯一正确的答案:) – nickb 2012-07-16 19:14:30

+0

@nickb如何是正确的 - http://codepad.viper-7.com/ naZQVN?或者我没有看到过吗? – 2012-07-16 19:27:25

+0

@ZoltanToth - 从OP:但在前一种情况下,**我想$ a是123.00。** – nickb 2012-07-16 19:34:20

6

使用number_format函数。如果你不希望逗号分隔符,设置像这样的函数的所有四个参数(千位分隔符是第四个参数):

$number = number_format(1234, 2, '.', ''); 
+0

到函数'number_format()'的链接将会更有帮助。 – Lion 2012-07-16 19:07:13

+0

@Pallad看看我的编辑请 – 2012-07-16 19:10:02

+0

@IstiaqueAhmed看看我的编辑。 – Palladium 2012-07-16 19:25:06

1

是啊,像这样:

$a = 123; 
$answer = number_format($a,"2"); 
echo $answer; 
+0

看看我的编辑请 – 2012-07-16 19:08:30