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

相关推荐
辛迪聊物业数字化13 小时前
智慧物业管理平台架构实践:从SaaS物业云到商管系统的全模块落地
大数据·微服务·php
右耳朵猫AI17 小时前
PHP周刊2026W38 | Laravel AI可观测、Symfony三版本、Webhook零信任、事件溯源架构
后端·php·laravel
专业程序开发源18 小时前
springboot篮球联赛管理系统13635-计算机课程设计、毕业设计
vue.js·spring boot·后端·python·django·php·课程设计
子非鱼a18 小时前
【WEB】cat flag
php
4SAPI19 小时前
大模型 API 聚合平台选型指南:企业与个人用户的接入架构、稳定性与成本评估
人工智能·php·agent
PHP实战开发录19 小时前
PHP Session为什么会拖慢并发请求
系统架构·php·开发
天若有情67320 小时前
独立开发复盘:我用 Node.js 做了个在线工具箱
前端·json·工具
Asurplus1 天前
【SpringBoot4】3、从SpringBoot4升级Sa-Token1.46.0报错
redis·sa-token·json·jackson·springboot4
闲云野鹤在人间2 天前
docker 入门 | 第5章 网络详解
网络·docker·架构·华为云·php
代码中介商2 天前
C++ 预约系统实战(三):服务端实现——libevent 事件驱动与业务路由
c++·json·c/s