我正在使用http://www.maatwebsite.nl/laravel-excel/docs,我正在尝试访问此函数之外的变量。我读过有关全局变量但看起来似乎是一个糟糕的解决方案。
Excel::load($request->file, function ($results) {
foreach ($results->toArray() as $row) {
$rows[] = $row;
}
});
在我的脚本中,我希望在上述功能之外访问$rows
。这怎么可能?
答案 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);