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

相关推荐
吴声子夜歌6 小时前
网络安全——网络渗透测试(网络扫描)
网络·web安全·php
++==7 小时前
JSON和Python的 四种核心容器
python·json
吴声子夜歌13 小时前
网络安全——网络渗透测试(密码破译)
网络·web安全·php
两个人的幸福online13 小时前
PHP 实现国密 SM3 踩坑记录:HMAC-SM3 签名对接 CNR 接口
开发语言·php
treesforest13 小时前
信贷反欺诈实战:通过IP属地一致性核验识别虚假贷款申请
网络协议·tcp/ip·php
极创信息14 小时前
国产化信创适配认证高频术语:信创适配、软件自主可控、国产化率、代码溯源率、代码自主率、代码开源率是什么?
java·python·struts·eclipse·开源·php·hibernate
ShiXZ21315 小时前
网络调试四剑客:ping / telnet / nc / netstat 速查指令集
运维·开发语言·网络·php
youandyouyou16 小时前
政务内网屏幕共享选型与私有化部署评估教程:合规、组网、自主可控三支柱
开发语言·php·政务
weixin_BYSJ198717 小时前
springboot小区物业管理小程序---附源码45555
java·javascript·spring boot·python·django·flask·php
2601_9657984717 小时前
Plastic Surgery Clinic Web Setup: Deploying Rejuvita WordPress
php·theme·wordpress