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

相关推荐
CRMEB系统商城29 分钟前
国内开源电商系统的格局与演变——一个务实的技术视角
java·大数据·开发语言·小程序·开源·php
zopple1 小时前
Laravel与ThinkPHP框架深度对比
java·python·php·laravel
SuperEugene2 小时前
Vue3 配置驱动弹窗:JSON配置弹窗内容/按钮,避免重复开发弹窗|配置驱动开发实战篇
前端·javascript·vue.js·前端框架·json
dashizhi20153 小时前
如何禁止外来设备连接内网wifi、禁止外来电脑接入单位局域网?
开发语言·网络·php
脑子加油站4 小时前
OpenEuler24.03 分布式配置redis 集群
数据库·redis·分布式·php·nginx代理
有谁看见我的剑了?4 小时前
Linux 内核参数优化
linux·网络·php
lhbian4 小时前
30分钟搭建PHP+Java全栈Web应用
java·前端·php
yutian06064 小时前
CCS:Code Composer Studio 在线调试设置仅擦除必要Flash或全片擦除
php·composer
五仁火烧4 小时前
前端最常用的两种请求数据格式application/json 和 multipart/form-data 完全解析
前端·javascript·vue.js·json
fengci.5 小时前
php反序列化(复习)(第五章)
android·开发语言·学习·php