我正在使用Laravel-Excel库开发导出xls函数。
我需要为特定的单元格添加一个值。作为文档,我写了脚本
$data = MyModel::getComplexData();
Excel::create('Export payroll', function($excel) use ($data) {
$excel->sheet('Sheet1', function($sheet) use ($data) {
$sheet->cell('A1', function ($cell) use ($data) {
$cell->setValue($data->name);
});
});
})->download('xls');
您可以看到参数$data
已通过3个回调函数传递了3次。
我需要找到一种使脚本更加清晰的方法(仅通过$data
1次。)
答案 0 :(得分:1)
我有主意看下面的代码。我们可以设置成成员变量。
<?php
class Test(){
private $data = "Hellow";
public function funct(){
$data = MyModel::getComplexData();
$this->data = $data;
Excel::create('Export payroll', function($excel){
$excel->sheet('Sheet1', function($sheet){
$sheet->cell('A1', function ($cell){
$cell->setValue($this->data->name);
});
});
})->download('xls');
}
}
?>