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

相关推荐
宋拾壹14 小时前
fastadmin列表中查看列表,并且添加增加相应的数据
javascript·php·fastadmin
weixin_4462608515 小时前
LLM智能体在社交模拟中的决策行为分析:有限状态与LLM-based策略对比研究
开发语言·php
唐青枫17 小时前
Php Doctrine ORM 实战详解:从实体映射到查询、关联与事务
php·symfony
一直奔跑在路上18 小时前
深入浅出RDMA:原理、应用与实战指南
开发语言·php
PixelBai18 小时前
JSON压缩使用教程:从入门到精通
json
右耳朵猫AI19 小时前
PHP周刊2026W23 | Composer 2.10、Symfony 8.1、Twig 3.27.1、PHP 8.5、Laravel AI SDK
php·composer·symfony
nexustech20 小时前
simplejson:Python JSON 处理的备用引擎
开发语言·python·其他·json
2401_834636991 天前
Nginx 从入门到实战:静态 / 动态站点、PHP 部署与反向代理全解析
运维·nginx·php
m0_497048932 天前
Prompt工程:从自然语言到代码化思维
json
ID_180079054732 天前
淘宝商品评论 API(taobao.item.reviews.get)业务场景与 JSON 返回实战
json