sa.*_*.ge 3 php floating-point decimal-point rounding
嗨,我正在尝试将一个数字四舍五入为16 位十进制数字,但它只显示并且不会四舍五入到14 位十进制数字。
这是我的尝试:
<?php
$num= 0.16346153846153846;
$round = number_format((float)$num, 17, '.', '');
echo $round * -1;
?>
Run Code Online (Sandbox Code Playgroud)
输出:
-0.16346153846154
预期产出:
0.1634615384615385
我知道浮点数只有 14 位十进制数字。16位十进制数字还有其他方法吗?
小智 5
您可以在运行时设置此参数。16 位通常是大多数平台上的最大值,较大的值仅给出无意义或“虚构”的数字:
ini_set("precision", "16");
Run Code Online (Sandbox Code Playgroud)
请参阅更改精度级别浮点变量