PHP”;round()”;以及小于1.0的数字


PHP "round()" and numbers lower than 1.0

为什么当我对小数进行四舍五入时,有些数字会得到错误的

echo round(0.7125, 2);

将导致:0.71

但是:

echo round(0.935625, 2);

退货:0.939999999

为什么?

我正在使用:5.5.45-MariaDB

您使用逗号,而不是点.作为小数分隔符。用途:

echo round(0.935625, 2); => 0.94


看来这是一个浮点精度的问题。您要求系统显示系统无法表示为float0.94。因此,它显示可以显示的最接近的数字:0.93999999

echo round(0.935625, 2);   // there is comma instead of .

请删除逗号(,)并尝试