Laravel Excel全局监听器能否获取导出文件数据及文件名?
Laravel Excel全局监听器获取导出数据/文件名
可以在BeforeWriting事件监听器中获取导出文件名及相关导出数据,只需要在回调函数中接收事件对象参数即可:
Writer::listen(BeforeWriting::class, function (BeforeWriting $event) { // 获取导出文件名 $fileName = $event->getWriter()->getFilename(); // 获取导出类实例(如InvoicesExport) $exportInstance = $event->getExport(); // 示例:打印文件名 dump($fileName); // 输出 invoices.xlsx });
补充说明
- 通过
$event->getWriter()->getFilename()可以直接拿到你在Excel::download()方法中传入的文件名; - 利用
$event->getExport()能获取到对应的导出类实例,若需要导出的数据源,可在导出类中添加公开方法或属性来暴露数据,再从这个实例中获取。
内容的提问来源于stack exchange,提问作者pileup
相关产品推荐
相关产品推荐

