我正在使用Laravel和Maatwebsite / Laravel-Excel从一个雄辩的模型中导出excel文件。
这就是我所拥有的
public function export(Request $request)
{
$data = $this->getData($param1)->get();
$export = Excel::create('example' . date('m-d-Y-G-His'), function ($excel) {
$excel->setDescription('example');
});
$export->sheet('Example', function ($sheet) {
$sheet->row(1, array(
'row1',
'row2',
'row3'
));
$i = 2;
foreach ($data as $d) {
$sheet->row($i, array(
$d->id,
$d->name, $d->date,
));
}
});
}
我得到Undefined变量:data
我理解这是一个范围问题而且错误是正确的,但是在函数内部传递变量的最佳方法是什么?
答案 0 :(得分:1)
您可以让PHP使用use
关键字在匿名函数中使用它:
$export->sheet('Example', function ($sheet) use ($data) {