PHP 7.3.8:四舍五入函数给出错误结果

时间:2019-11-20 16:50:46

标签: php math rounding-error

我正在寻找有关非常奇怪的PHP行为的解释。偶然地,我们发现PHP舍入一个整数的情况。

因此在以下示例中: floor(2.05 * 100) == 204 true 以及(int)(2.05 * 100) === 204

这两种情况似乎都不正确,因为floor()或(int)应该导致数字205,而不是204。

将数字乘以1000并除以10时,使用(int)时结果正确: (int)((2.05 * 1000) / 10) === 205,但在使用floor()时仍然不正确。

你能告诉我为什么会这样吗?

我的PHP版本为7.3.8,但可能与旧版本相同。

非常感谢!

0 个答案:

没有答案