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

相关推荐
printfLILEI6 小时前
php中的类与对象以及反序列化
linux·开发语言·php
华科大胡子7 小时前
AI开发者的网络卡点:Anthropic连接超时
开发语言·php
bill32822780438 小时前
AE 的 Animation Composer 描边动效玩法 + 极简 MG 制作流程(含示例)
php·composer
weelinking9 小时前
【产品】11_实现后端接口——数据在背后如何流动
java·人工智能·python·sql·oracle·json·ai编程
csdn_aspnet11 小时前
PHP 算法 LeetCode 编号 70 - 爬楼梯
算法·leetcode·php
林熙蕾LXL12 小时前
socket编程-TCP开发常用函数
网络协议·tcp/ip·php
m0_7381207212 小时前
渗透测试基础——黑盒测试下的Web漏洞挖掘与利用解析(一)
服务器·前端·网络·安全·php
catchadmin15 小时前
免费可商用 PHP 管理后台 CatchAdmin V5.3.1 发布 后台打包直降 5s 内
开发语言·php
Leweslyh15 小时前
基于 Confucius 架构的无人集群网络控制原语解析
开发语言·网络·php
ylscode16 小时前
黑客利用 GHOSTYNETWORKS 和 OMEGATECH 托管 JS 恶意软件基础设施
开发语言·安全·php·安全威胁分析