Laravel Excel - 访问变量外部函数

时间:2017-10-14 02:10:52

标签: php laravel laravel-excel

我正在使用http://www.maatwebsite.nl/laravel-excel/docs,我正在尝试访问此函数之外的变量。我读过有关全局变量但看起来似乎是一个糟糕的解决方案。

Excel::load($request->file, function ($results) {
    foreach ($results->toArray() as $row) {
       $rows[] = $row;
    }
});

在我的脚本中,我希望在上述功能之外访问$rows。这怎么可能?

2 个答案:

答案 0 :(得分:0)

我明白了:

$results = Excel::load($request->file);
$data = $results->toArray();

能够删除该功能,仍然可以修改和访问我想要做的数据。

答案 1 :(得分:0)

您只需将$ rows声明为数组即可  封闭函数之前和之外的$rows=[];。您还需要在关闭时使用use($rows)

Excel::load($request->file, function ($results) use($rows) {
foreach ($results->toArray() as $row) {
   $rows[] = $row;
}

});

否则可以有其他方法,如

      $path = $request->file('import_file')->getRealPath();
        $data = Excel::load($path, function($reader) {
        })->get();

        dd($data);