PHP7 json_encode() 浮点小数溢出错误

原因已找到, 该现象只出现在PHP 7.1+版本上

建议使用默认值 serialize_precision = -1 即可

事情是这样的,项目里发现一个奇怪的现象,json_encode一个带浮点价格的数据, 出现溢出, 比如:

bash 复制代码
echo json_encode(277.2);
// 输出结果为: 277.199999999999989

这明显是不能接受的, 数据虽然很接近, 但毕竟已经变更了

下意识地认为这是php的一个bug, 不能准确地json序列化一个浮点小数

这个问题google了半天竟然也无果, 因此json_encode数据里有小数的时候, 记得先number_format()转化成字符串.

相关推荐
北漂Zachary2 小时前
四大编程语言终极对比
android·java·php·laravel
zuowei28893 小时前
华为网络设备配置文件备份与恢复(上传、下载、导出,导入)
开发语言·华为·php
M158227690558 小时前
工业 CAN 总线无线互联利器|4 路 CAN 转 4G/WiFi 网关 产品介绍
开发语言·php
niucloud-admin10 小时前
PHP SAAS 框架常见问题——配置问题——地图配置报错
php
古月方枘Fry11 小时前
三层交换+VRRP实现负载
开发语言·网络·php
anzhxu14 小时前
防火墙安全策略(基本配置)
服务器·php·apache
墨澜逸客14 小时前
华胥祭坛志---文/墨澜逸客
开发语言·深度学习·学习·百度·php·学习方法·新浪微博
石榴树下的七彩鱼15 小时前
智能抠图 API 接入实战:3 行代码实现图片自动去背景(Python / Java / PHP / JS)
java·图像处理·人工智能·python·php·api·抠图
niucloud-admin16 小时前
PHP SAAS 框架常见问题——配置问题——小程序配置提示“Failed to get authorizer_access_token“
php
黑牛儿16 小时前
面试高频问题:从浏览器请求到PHP响应:完整流程拆解
android·后端·面试·php