= =偶然看到篇文章,恰巧之前碰到过,当时是用字符串搞定的,按兴趣跟进,发现有必要总结一下其他方式。

原因:PHP7.1后php.ini里的serialize_precision默认为17,低于15就会避免问题发生。
所以可以选择修改php.ini,也可以在php文件中使用:

ini_set('serialize_precision', 14); 
ini_set('precision', 14);

看起来-1也可以,没有实测,单纯总结。

问题解析相关可查看:https://stackoverflow.com/questions/42981409/php7-1-json-encode-float-issue#answer-43056278

Related Posts: PHP7.1 json_encode 造成float数据精度异常情况 :

avatar