PHP“;圆形();和低于1.0的数字
为什么当我将小数取整时,有些数字会出错PHP“;圆形();和低于1.0的数字,php,rounding,Php,Rounding,为什么当我将小数取整时,有些数字会出错 echo round(0.7125, 2); 将导致:0.71 但是: 收益率:0.9399999 为什么呢 我正在使用:5.5.45-MariaDB 十进制分隔符使用的是逗号,,而不是点。使用: echo round(0.935625, 2); => 0.94 好的,这似乎是一个浮点精度的问题。您要求系统显示0.94,系统无法将其表示为浮点值。因此,它会显示最接近的数字:0.93999999 echo round(0.935625, 2);
echo round(0.7125, 2);
将导致:0.71
但是:
收益率:0.9399999
为什么呢
我正在使用:5.5.45-MariaDB
十进制分隔符使用的是逗号,
,而不是点
。使用:
echo round(0.935625, 2); => 0.94
好的,这似乎是一个浮点精度的问题。您要求系统显示
0.94
,系统无法将其表示为浮点值。因此,它会显示最接近的数字:0.93999999
echo round(0.935625, 2); // there is comma instead of .
请删除逗号(,)
并尝试它您将0
作为数字传递,并希望它四舍五入到935625
位置,模式为:PHP\u ROUND\u HALF\u DOWN
我希望您没有将带有逗号的数字指定为十进制分隔符。您不应该使用“.”作为十进制分隔符吗?请删除您的“减号”. 实际上有一个点。看来PHPExcell把它从昏迷变成了斑点。我的问题仍然存在!!!!PHPExcel和这有什么关系?你在最初的问题中没有提到这一点对不起,输出带有一个点。。。不是昏迷。问题依然存在@汤姆:好的,我想我必须读一读浮点数,然后。。我不明白。我怎样才能解决这个问题?@Mjukis我建议你读一读关于抱歉,输出带有一个点。。。不是昏迷。问题依然存在!
echo round(0.935625, 2); // there is comma instead of .