文件打开时Laravel Excel处理错误

时间:2018-11-30 10:47:12

标签: laravel laravel-excel

我在本地项目中使用Laravel Excel 2.1.0将行写入Excel文件中。

这是我的代码:

$filePath = storage_path('myfile.xls');
$rows = \Excel::load($filePath, function($reader) {
    $sheet = $reader->sheet(0);
    $sheet->appendRow(
        array(
             'Hello'
        )
    );
});

一切正常,并且在我的文件中添加了新行。

有时,当用户尝试添加新行时,会打开excel文件。在这种情况下,Laravel正确地向我显示此错误:

fopen(mypath\myfile.xls): failed to open stream: Resource temporarily unavailable

如何处理此错误以跳过该函数并继续执行我的代码而不添加行?

1 个答案:

答案 0 :(得分:0)

我以这种方式解决了

$filePath = storage_path('myfile.xls');
$fp = @fopen($filePath, "r+");
if($fp) {
    $rows = \Excel::load($filePath, function($reader) {
        $sheet = $reader->sheet(0);
        $sheet->appendRow(
            array(
                 'Hello'
            )
        );
    });
}