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

相关推荐
wqdian_com36 分钟前
中文域名的准确展示能否堵住网络钓鱼攻击“后门”?
服务器·安全·php
YJlio2 小时前
PsPing 学习笔记(14.7):一条龙网络体检脚本——连通性、延迟、带宽全都要
开发语言·网络·笔记·python·学习·pdf·php
阿猿收手吧!3 小时前
【C++】JSON核心数据结构解析及JSONCPP使用
数据结构·c++·json
Wpa.wk5 小时前
接口自动化 - 解决大量响应数据字段的格式断言 -Json-schema
运维·经验分享·测试工具·自动化·json·接口测试
oMcLin5 小时前
如何在 Debian 11 上通过优化 Nginx 与 PHP‑FPM,提高大流量网站的稳定性与响应速度?
nginx·debian·php
南工孙冬梅6 小时前
Linux中安装配置nfs
linux·运维·php
CryptoRzz6 小时前
印度交易所 BSE 与 NSE 实时数据 API 接入指南
java·c语言·python·区块链·php·maven·symfony
玄〤6 小时前
Spring MVC 讲解:从初始化流程到请求参数与 JSON 处理全解析(黑马课程ssm笔记总结)(day5)
java·spring·json·mvc
消失的旧时光-19437 小时前
Freezed + json_serializable:DTO / Domain 分层与不可变模型(入门到落地)-----上篇
flutter·json·dto·domain
BingoGo7 小时前
PHP 高效的标准库 SPL 全面指南
后端·php