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

相关推荐
半路_出家ren26 分钟前
python处理异常,JSON
python·json·异常处理
傻小胖6 小时前
json-server的用法-基于 RESTful API 的本地 mock 服务
后端·json·restful
s_little_monster6 小时前
【Linux】socket网络编程基础
linux·运维·网络·笔记·学习·php·学习方法
search77 小时前
配置文件介绍xml、json
xml·json
筱宇***21 小时前
Mac的web服务器
mysql·nginx·macos·php
iangyu1 天前
【windows server脚本每天从网络盘复制到本地】
开发语言·windows·php
YUJIANYUE1 天前
PHP黑白胶卷底片图转彩图功能 V2025.05.15
php
为自己_带盐1 天前
浅聊一下数据库的索引优化
开发语言·数据库·php
Chandler241 天前
Go语言:json 作用和语法
开发语言·golang·json
Hfc.2 天前
docker-daemon.json
docker·容器·json