舍入时PHP数字格式为零

时间:2012-08-13 22:31:09

标签: php jquery number-formatting

我正在使用PHP的number_format将浮点数显示为2位小数。

当数字大约是1.898时,它会被四舍五入到1.9。

如何将其显示为1.90?

更新

我有一个结束的功能......

return number_formant($num, 2);

调用该函数的php脚本打印出Javascript要使用的数字。当我对数字执行var_dump时,它会正确打印两个小数位。看起来这是Javascript正在失去零。

这是导致问题的JS代码......

function show_level(level) {
...
if (level > 9999)
    level_label = (level / 1000).toPrecision(3) + 'k';
else if (level > 999)
    level_label = (level / 1000).toPrecision(2) + 'k';
else
    level_label = level;

我改变了最后一行,让它按照我想要的方式工作..

  level_label = level.toFixed(2);

4 个答案:

答案 0 :(得分:1)

也许不是最好的解决方案,但是:

$n = 1.2345;
$n = number_format( round($n, 1), 2);
//echo 1.20
echo $n;

答案 1 :(得分:1)

所以, 你的意思是这样的(你有什么):

<?php
echo number_format($x);
?> 

这就是你想要的:

<?php
echo number_format($x,2);
?> 

你可以使用其他长度。试试吧!

希望可以帮助你 :)

答案 2 :(得分:0)

echo sprintf('%01.2f', number_format(1.898,2))

答案 3 :(得分:0)

你可以这样做:

echo round(1.898,2);