无法在Laravel Excel的文档中找到如何在下载之前为加载的文件指定新名称。我试过了 - > gt。setTitle但是它没有用。
Excel::load(public_path().'/bills/bill.template.xlsx', function($doc) {
$doc->setTitle = 'test';
$sheet = $doc->setActiveSheetIndex(0);
$sheet->setCellValue('G21', '{buyer}');
$sheet->setCellValue('AB24', '{sum}');
$sheet->setCellValue('B30', '{sum_propis}');
})->download('xlsx');
它给了我" bill.template.xlsx"当我等待" test.xlsx"
时答案 0 :(得分:7)
之前我没有使用过此库,但查看代码看起来可以set the filename attribute will then get used in the headers to set the name of the file downloaded。
可能类似于:
Excel::load(public_path().'/bills/bill.template.xlsx', function($doc)
{...})
->setFilename('whatever')
->download('xlsx');
答案 1 :(得分:0)
$data = Excel::download($query, 'TimeSheetExport.xlsx');
$data->setContentDisposition('attachment','TimeSheetExport')->getFile()->move(public_path('xlsx/'), $data->getFile().'xlsx');
$query
是我们的收藏。
'TimeSheetExport.xlsx'->将不是我们的文件名
在move()
中,您可以在第二个参数中输入文件名,第一个参数将是该文件的位置