Laravel excel,为什么函数($reader)无法获取变量?



目前我正在使用Laravel-Excel(MaatWebsite(。我在控制器中有这样的代码

public function house($id)
{
$furniture_number = Furniture::where('id', $id)->first();
$rows = Excel::load('storage\app\public\upload\furniture.xlsx', function($reader)
{
$reader->noHeading(); 
$reader->takeColumns($furniture_number->amount);
})->get();
}

dd($furniture_number->amount( 返回 "10">

未定义的变量:furniture_number(在 $reader->takeColumns($furniture_number->amount(; 行(

你需要使用 'use' 语句将 $furniture_number 变量传递给闭包:

$rows = Excel::load('storage\app\public\upload\furniture.xlsx', function($reader) use ($furniture_number) {
$reader->noHeading(); 
$reader->takeColumns($furniture_number->amount);
})->get();

最新更新