我正在使用maatwebsite / excel软件包,并且希望动态传递不同的文件类型作为第二个参数。
See function here
以下是变量:
$fileType = $request->input('fileType', 'xlsx');
$writerType = Excel::$fileType;
但是我得到了错误:
访问未声明的静态属性:Maatwebsite \ Excel \ Excel :: $ fileType
我尝试使用大括号,但不起作用:
Excel::${"fileType"};
如何传递变量?谢谢!
答案 0 :(得分:0)
return Excel::create('PatientList',function($excel) use ($variable){
$excel->sheet('List',function($sheet) use ($variable){
$sheet->fromArray($variable);
});
})->download($type);
当您下载文件时,请像这样使用。从视图中通过$type
。
答案 1 :(得分:0)
您正确传递了变量。但是您的问题是Maatwebsite\Excel\Excel包含常量XLSX,它不是属性。可以通过Excel :: XLSX静态访问常量,也可以使用constant函数动态访问常量:
try {
await new Promise((resolve, reject) => {
r.onsuccess = resolve
r.onerror = reject
})
console.log('success');
result.something = true;
} catch(err) {
console.log('error');
result.something = false;
}