如何处理php中的number_format输出?

时间:2011-03-02 01:35:15

标签: php

我正确获得以下输出:

<?php echo number_format("12312.312","1"); // Correct Output 12312.3 ?>

但在以下情况

<?php echo number_format("12312","1"); // Getting output 12312.0 but requires only 12312 ?>

所以基本上,我想控制我的输出,即只有当我的十进制数字大于0时才应该添加小数位。

4 个答案:

答案 0 :(得分:2)

number_format()的第二个参数采用小数位数 - 因此您的示例是预期结果。也许你在round()函数中受到了影响,它允许舍入到一定的精度?

答案 1 :(得分:1)

您可以尝试这样的事情

<?php
$number = 12312;
echo is_int($number) ? $number : number_format($number,"1");
?>

答案 2 :(得分:0)

如果您不想要额外的小数位,请使用<?php echo number_format(12312, 0);?>

“0”表示0位小数

答案 3 :(得分:0)

简单地将它投射到浮动,usign(浮动),工作。

e.g。

$ num_1 =(float)1.0;

$ num_2 =(float)1.1;

echo $ num_1; echo $ num_2;

输出:

1

1.1