Cet article présente principalement comment exporter rapidement les valeurs de retour Excel dans Laravel8 C'est très simple~ J'espère que cela sera utile aux amis dans le besoin !
【Recommandation associée : tutoriel vidéo laravel】
Une idée simple pour exporter la valeur de retour Excel dans Laravel8
J'ai récemment utilisé l'extension MaatwebsiteExcel pour exporter Excel Comment le faire, je n'entrerai pas dans les détails. détails ici. Utilisez simplement le code Export suivant :
//导出excel【$head是excel表头,$list是数据】 return Excel::download(new CustomerExport($head, $list), date('YmdHis') . '.xls');
J'ai imprimé cette valeur de retour par curiosité :
print_r(Excel::download(new CustomerExport($head, $list), date('YmdHis') . '.xls'));
Le résultat est le suivant :
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] => )
Évidemment, c'est un objet.
Parce que mon front-end et mon back-end sont séparés et que l'interface est directement codée, les étudiants du front-end utilisent la balise a pour accéder à l'adresse de l'interface à télécharger, et cela peut réussir. Mais ouvrez le réseau de F12 pour voir la valeur de retour. Ce que le front-end obtient est un flux de fichiers, comme suit :
Pourquoi est-ce que lors de l'exécution de l'interface renvoie directement un objet, le front-end l'obtient sous forme de fichier. flux de fichiers ?
Il s'avère que lors du retour, deux paramètres sont automatiquement ajoutés à l'en-tête de retour
Content-Disposition:attachment; filename=20221208152026.xls Content-Type:application/vnd.ms-excel
Content-Disposition n'est pas le message d'en-tête dans l'objet
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!