for($i=0;$i<=15120;$i+=504){
echo ($i/60/8.4) . " - " .floor($i/60/8.4)."<br>";
}
结果(我提出**有问题):
0-0
1-1
2-2
3-3
4-4
5-5
6-6
7 - 6
8-8
9 - 8
10 - 10
11 - 11
12-12
13 - 13
14 - 13
15 - 15
16 - 16
17 - 17
18 - 17
等等。
一开始,我认为我应用了"Floo“来计算,但是(对于”7-6“行)也是$i = 3528:
3528 / 60 = 58,8 == Floor ==> 58 / 8 = 7.25
7.25楼=/= 6楼
发布于 2020-01-09 10:53:18
因为PHPs的浮点精度
因此,例如,您的第8次计算将不会返回7,而是类似于6.999999999999999999999999999999999999999999999999之类的内容。
由于这是一个双倍,输出时它将四舍五入为7,请尝试如下:
$x = 6.9999999999999999999999999999999999999999999999999999999;
echo $x;
当您使用floor()
时,它会(正确地)将其整到6
https://stackoverflow.com/questions/59662186
复制相似问题