我正在寻找具有一定意义的数字。
例如 2499 => 2400。这可以在 excel 中使用=FLOOR(2499, 100)
PHP中这个的等效函数是什么?或者是否有解决这个问题的库/自定义函数?
我正在寻找具有一定意义的数字。
例如 2499 => 2400。这可以在 excel 中使用=FLOOR(2499, 100)
PHP中这个的等效函数是什么?或者是否有解决这个问题的库/自定义函数?
使用这种方法:
https://stackoverflow.com/a/7491541/2731161
所以:
round_down('2499',-2); #results in 2400
注意精度值。您需要发布答案中的 round_down 函数。
这是地板();
(你会相信吗?)没有精度设置..这个函数来自PHP 手册页- 声称添加小数位虽然我没有测试过。
否则你可以乘以 100(如果你想要 2 dps),使用 floor(),然后除以 100 得到结果。
Floor decimal numbers with precision:
function floor_dec($number,$precision,$separator){
$numberpart=explode($separator,$number);
$numberpart[1]=substr_replace($numberpart[1],$separator,$precision,0);
if($numberpart[0]>=0)
{$numberpart[1]=floor($numberpart[1]);}
else
{$numberpart[1]=ceil($numberpart[1]);}
$ceil_number= array($numberpart[0],$numberpart[1]);
return implode($separator,$ceil_number);
}
echo floor_dec(1.125,2,"."); //1.12
echo floor_dec(-1.3436,3,"."); //-1.344
echo floor_dec(102938.1,4,"."); //102938.1