如何用3位小数舍入PHP数值?

时间:2016-04-29 09:26:50

标签: php function rounding precision

$val = 95454545.455

如何围绕$val,结果将是95454546

因为使用round()仅返回95454545

修改

ceil()几乎是正确的,但如果$val = 95454545.444,我希望函数返回95454545

此致 埃尔默

4 个答案:

答案 0 :(得分:0)

使用ceil()代替将转到下一个大值

echo ceil($val);

<强>更新

使用round()和HALF UP标志

可以获得更高的精度
echo round(95454545.544, 0, PHP_ROUND_HALF_UP); //95454546

echo round(95454545.44, 0, PHP_ROUND_HALF_UP); //95454545

答案 1 :(得分:0)

试试这个 ceil - Round fraction up,如果需要,通过舍入值返回下一个最高整数值。

<?php
$val = 95454545.455;
$result = ceil($val);
echo 'Result '.$result;
?>

答案 2 :(得分:0)

尝试使用此number_format它将向上舍入十进制数

<?php
$val = 95454545.455;
$result = number_format($val , 3, '.', ',');
echo 'Result '.$result;
<?

答案 3 :(得分:0)

我想,我找到了这种问题的公式。 例如:

$var = 95454545.454

我只需在其中添加0.055值。

$new_var = $var + 0.055 - &gt; $new_var = 95454545.509

$result = round($new_var) - &gt; $result = 95454546