如何将PHP数值四舍五入到小数点后三位?
How to round PHP numeral value with 3 decimal?
$val = 95454545.455
如何舍入 $val
使结果为 95454546
?
因为仅使用 round()
return 95454545
编辑
ceil()
几乎是正确的,但是如果 $val = 95454545.444
,我希望函数 return 到 95454545
此致,
埃尔默
改为使用 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
试试这个
ceil — 向上舍入分数,Returns 下一个最高整数值,必要时向上舍入值。
<?php
$val = 95454545.455;
$result = ceil($val);
echo 'Result '.$result;
?>
试试这个 number_format 它会四舍五入小数
<?php
$val = 95454545.455;
$result = number_format($val , 3, '.', ',');
echo 'Result '.$result;
<?
我想,我找到了解决这类问题的公式。
例如:
$var = 95454545.454
我只需要在其中添加 0.055
值。
$new_var = $var + 0.055
-> $new_var = 95454545.509
$result = round($new_var)
-> $result = 95454546
$val = 95454545.455
如何舍入 $val
使结果为 95454546
?
因为仅使用 round()
return 95454545
编辑
ceil()
几乎是正确的,但是如果 $val = 95454545.444
,我希望函数 return 到 95454545
此致, 埃尔默
改为使用 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
试试这个 ceil — 向上舍入分数,Returns 下一个最高整数值,必要时向上舍入值。
<?php
$val = 95454545.455;
$result = ceil($val);
echo 'Result '.$result;
?>
试试这个 number_format 它会四舍五入小数
<?php
$val = 95454545.455;
$result = number_format($val , 3, '.', ',');
echo 'Result '.$result;
<?
我想,我找到了解决这类问题的公式。 例如:
$var = 95454545.454
我只需要在其中添加 0.055
值。
$new_var = $var + 0.055
-> $new_var = 95454545.509
$result = round($new_var)
-> $result = 95454546