导出为csv格式时不计算公式


Formulas not calculated when exporting as csv

我有这个Excel文件(.xlsx):

+---+-------+
|   |   A   |
+---+-------+
| 1 | 1     |
| 2 | =A1+1 |
| 3 | =2*3  |
+---+-------+

在Laravel中,我配置了这段代码来显示

内容
return Excel::load(base_path() . '/test.xlsx')->string('csv');

返回单元格的文本:"1","=A1+1","=3*2"

我想要的是计算值,但格式相同:"1","2","6"

的代码
return Excel::load(base_path() . '/test.xlsx')->get();

返回正确的计算数据,但格式错误。

有一个选项正是为了这个目的。您可能在config/excel.php处有一个配置文件(如果不只是在php artisan vendor:publish --provider="Maatwebsite'Excel'ExcelServiceProvider"处)。看一下export数组,它包含以下选项:

    /*
    |--------------------------------------------------------------------------
    | Pre-calculate formulas during export
    |--------------------------------------------------------------------------
    */
    'calculate'                   => false,