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

相关推荐
智能直播10 小时前
网络RTMP拉流不卡顿、声音不同步,一文讲透缓冲区、时间戳
开发语言·ffmpeg·php·音视频·视频编解码
墨云安全11 小时前
内网资产无法暴露到公网,怎么做安全检测?2026 年内网渗透测试的落地路径
开发语言·安全·网络安全·渗透测试·php
我是唐青枫13 小时前
Yii2 Applications 详解:应用生命周期、组件配置与多入口实战
php
kimnoic14 小时前
PHP 8.2的DNF类型怎么用才规范
开发语言·php
中屹指纹浏览器svip15 小时前
打开账号环境网页报错,常见原因有哪些?
服务器·开发语言·php·中屹指纹浏览器
夜雪一千17 小时前
MySQL 删除 JSON 类型的数据实战
mysql·adb·json
修船大队长18 小时前
CanNm 从休眠唤醒后重复消息报文的周期与数量分析
开发语言·php
卿卿的产品经理日记18 小时前
【AI产品经理实战】Day 37|拆开 JSON 与 EXE:数据都有格式
人工智能·笔记·python·json·产品经理
李纲明18 小时前
WordPress 安全加固基线:更新策略、文件权限、登录面收缩和备份验证(含回滚注意)
运维·安全·php·wordpress
Novproxy_Z18 小时前
IPv4 与 IPv6 代理在跨境自动化场景下的选型与风险
运维·自动化·php