【发布时间】:2020-11-09 18:03:17
【问题描述】:
我知道 php 浮点数 are not accurate 并且我知道像 BCMath 和 GMP 这样的解决方案。我在本地WAMP server 和另一台服务器(使用Nginx)上测试了以下代码:
$size = 0.0006;
$data = json_encode( array("size" => $size));
var_dump($data);
WAMP 上的输出:
string '{"size":0.0006}' (length=15)
另一台服务器上的输出:
string(31) "{"size":0.00059999999999999995}"
两台服务器上的 PHP 版本都是 7.3。为什么我在 WAMP 上得到了预期的结果,而在我的托管服务器上却出现了问题?有什么可以修复的配置吗?
【问题讨论】:
-
这里提到php.net/manual/en/language.types.float.php永远不要相信浮点数结果到最后一位。
-
使用 number_format 将值四舍五入到您网站所需的小数位数
标签: php wamp floating-accuracy