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

相关推荐
cch89182 小时前
PHP五大后台框架横向对比
开发语言·php
wefly20175 小时前
纯前端架构深度解析:jsontop.cn,JSON 格式化与全栈开发效率平台
java·前端·python·架构·正则表达式·json·php
MegaDataFlowers9 小时前
什么是JSON
json
极创信息9 小时前
信创软件安全加固指南,信创软件的纵深防御体系
java·大数据·数据库·金融·php·mvc·软件工程
winfreedoms11 小时前
宿主机有网、Docker 容器不能解析域名?用 daemon.json 一键配置永久 DNS
运维·docker·容器·json
诗词在线11 小时前
诗词在线古诗词传播
人工智能·word·php
源码宝11 小时前
使用 PHP(Laravel 8)+ Vue 2 + Element UI + MySQL 5.7开发一套医院不良事件系统的注意事项
vue.js·php·laravel
不会写DN12 小时前
PHP 中处理图像的利器 GD库
开发语言·php
liliangcsdn12 小时前
对基于Pydantic BaseModel的实例进行JSON序列化
人工智能·json·全文检索
cch891814 小时前
PHP vs 易语言:Web开发与桌面编程大对决
开发语言·前端·php