round(9.3861348984, 2) 预期是 9.39
却显示成了
9.390000000000001
解决方式 :
1.1 实例化excel前先获取默认 精度
1.2 实例化后再重新设置成 默认精度即可
// displays : float 8.2
var_dump(8.2);
$defaultPrecision = ini_get('precision');
$excel = new \PHPExcel();
ini_set('precision', $defaultPrecision);
// displays : float 8.2
var_dump(8.2);参考
https://github.com/PHPOffice/PHPExcel/issues/905
本文介绍了一个关于PHPExcel在处理浮点数精度时出现的问题及解决方案。具体表现为round函数处理后的数值显示异常,通过调整PHP默认精度设置来解决此问题。

被折叠的 条评论
为什么被折叠?



