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