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

相关推荐
青茶3601 小时前
ThinkCMF是一个开源的内容管理框架
php·cms·thinkphp
vx_vxbs662 小时前
【SSM电动车智能充电服务平台】(免费领源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案
java·spring boot·mysql·spring cloud·小程序·php·idea
j***57682 小时前
电脑可以连接wifi,但是连接后仍然显示没有网络
网络·电脑·php
q***49862 小时前
SpringCloud系列教程:微服务的未来 (五)枚举处理器、JSON处理器、分页插件实现
spring cloud·微服务·json
踢球的打工仔4 小时前
PHP面向对象(5)
android·java·php
t***82114 小时前
华为数据中心CE系列交换机级联M-LAG配置示例
服务器·华为·php
white-persist4 小时前
【攻防世界】reverse | Reversing-x64Elf-100 详细题解 WP
c语言·开发语言·网络·python·学习·安全·php
JaguarJack5 小时前
PHP Fiber 优雅协作式多任务
php·服务端
9***P33413 小时前
PHP代码覆盖率
开发语言·php·代码覆盖率
2501_9416233216 小时前
C++高性能网络服务器与epoll实战分享:大规模并发连接处理与事件驱动优化经验
开发语言·php