Dieser Artikel stellt hauptsächlich vor, wie man Excel-Rückgabewerte schnell in Laravel8 exportiert. Es ist sehr einfach ~ Ich hoffe, es wird Freunden helfen, die es brauchen!
【Verwandte Empfehlung: Laravel-Video-Tutorial】
Eine einfache Idee zum Exportieren von Excel-Rückgabewerten in Laravel8
Ich habe kürzlich die MaatwebsiteExcel-Erweiterung zum Exportieren von Excel verwendet, auf die ich nicht näher eingehen werde Details hier. Verwenden Sie einfach den folgenden Code-Export:
//导出excel【$head是excel表头,$list是数据】 return Excel::download(new CustomerExport($head, $list), date('YmdHis') . '.xls');
Ich habe diesen Rückgabewert aus Neugier gedruckt:
print_r(Excel::download(new CustomerExport($head, $list), date('YmdHis') . '.xls'));
Das Ergebnis ist wie folgt:
Symfony\Component\HttpFoundation\BinaryFileResponse Object ( [file:protected] => Symfony\Component\HttpFoundation\File\File Object ( [pathName:SplFileInfo:private] => /home/vagrant/www/admin/storage/framework/cache/laravel-excel/laravel-excel-4U89uL9YLn4vNb1QrCDelsmv4Yrk3Ff.xls [fileName:SplFileInfo:private] => laravel-excel-4U89uL9YLn4vNb1QrCDelsmv4Yrk3Ff.xls ) [offset:protected] => 0 [maxlen:protected] => -1 [deleteFileAfterSend:protected] => 1 [headers] => Symfony\Component\HttpFoundation\ResponseHeaderBag Object ( [computedCacheControl:protected] => Array ( [public] => 1 ) [cookies:protected] => Array ( ) [headerNames:protected] => Array ( [cache-control] => Cache-Control [date] => Date [last-modified] => Last-Modified [content-disposition] => Content-Disposition ) [headers:protected] => Array ( [cache-control] => Array ( [0] => public ) [date] => Array ( [0] => Thu, 08 Dec 2022 05:57:26 GMT ) [last-modified] => Array ( [0] => Thu, 08 Dec 2022 07:16:21 GMT ) [content-disposition] => Array ( [0] => attachment; filename=20221208152026.xls ) ) [cacheControl:protected] => Array ( [public] => 1 ) ) [content:protected] => [version:protected] => 1.0 [statusCode:protected] => 200 [statusText:protected] => OK [charset:protected] => )
Offensichtlich ist er ein Objekt.
Da mein Front-End und mein Back-End getrennt sind und die Schnittstelle direkt codiert ist, springen die Front-End-Studenten mithilfe des Tags a zur Schnittstellenadresse, um sie herunterzuladen, und dies kann erfolgreich sein. Öffnen Sie jedoch das Netzwerk von F12, um den Rückgabewert anzuzeigen. Das Frontend erhält einen Dateistream wie folgt:
Warum gibt das Frontend ein Objekt zurück, wenn es direkt ausgeführt wird? Dateistream?
Es stellt sich heraus, dass bei der Rückgabe automatisch zwei Parameter zum Rückgabeheader hinzugefügt werden
Content-Disposition:attachment; filename=20221208152026.xls Content-Type:application/vnd.ms-excel
Content-Disposition ist nicht die Header-Nachricht im Objekt
Das obige ist der detaillierte Inhalt vonSo exportieren Sie schnell Excel-Rückgabewerte in Laravel8!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!