Php 菲律宾卢丁44947至44900

Php 菲律宾卢丁44947至44900,php,rounding,Php,Rounding,我想将此整数的最低位数四舍五入示例: 1940 > 1900 104942 > 104900 44947 > 44900 我试着使用: round( 44947, -1 ) > 44950 round( 44945, -2 ) > 45000 有什么想法吗?取整X/100*100不就行了吗?你必须取整到两位数才能得到想要的结果,请检查此项 $var=44947; echo round($var,-2); 使用地板 圆形将使其圆化-因此

我想将此整数的最低位数四舍五入示例:

1940   > 1900
104942 > 104900
44947  > 44900
我试着使用:

round( 44947, -1 )    >   44950
round( 44945, -2 )    >   45000

有什么想法吗?

取整X/100*100不就行了吗?

你必须取整到两位数才能得到想要的结果,请检查此项

$var=44947;
echo round($var,-2);
使用地板

圆形将使其圆化-因此.6变为1,楼层四舍五入,因此.6变为0。 所以

将给出1900和2000


不幸的是,您不能使用与舍入相同的东西并指定DP的数量,因此/100*100可以完成这项工作。

您可以舍入到任何数字。在本代码中,正如您提到的,舍入到地板的范围为100

$num=44947;
$num=floor($num/100)*100;
var_dump($num);
模式使用以下常量之一指定舍入发生的模式


详细说明您使用的PHP版本的最低数字副本?round44947,-2最肯定返回44900。你不是在做'round44947,-1,-2是吗?@HagenvonEitzen不,我试过round44947,-2,它返回45000。round44947,-1返回44950。
echo floor(1960/100)*100;
echo round(1960,-2);
$num=44947;
$num=floor($num/100)*100;
var_dump($num);
 round( 104942 , -2 , PHP_ROUND_HALF_DOWN);