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()转化成字符串.

相关推荐
damoluomu11 小时前
挑 PHP CMS 之前,先学会看它的协议
php
譕痕12 小时前
JSONObject与JSONArray封装数据格式区别
java·json
A黄俊辉A12 小时前
uniapp webview中实现 app和内嵌的H5双向通信
vue.js·json
伞伞悦读17 小时前
【第37期】Python JSON 与配置详解:序列化、反序列化、嵌套结构和配置文件
开发语言·python·json
Mikko717 小时前
jackson-databind 升到 2.21.6 就安全了吗?jackson-core 是另一个坐标,它那条 high 全局库至今没收
java·后端·安全·json
子非鱼a19 小时前
【WEB】Online ToolWEB
php
PHP实战开发录20 小时前
Nginx上传大文件为什么报413
nginx·php·开发
damoluomu1 天前
国产企业级 PHP CMS:哪些能免费商用
php
郑州光合科技余经理1 天前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程
MyFreeIT1 天前
Android PHP Manual
php