這篇文章主要介紹了Laravel8怎么快速導(dǎo)出excel返回值的相關(guān)知識,內(nèi)容詳細(xì)易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Laravel8怎么快速導(dǎo)出excel返回值文章都會有所收獲,下面我們一起來看看吧。
我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站設(shè)計、成都外貿(mào)網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、甕安ssl等。為上1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的甕安網(wǎng)站制作公司
Laravel8導(dǎo)出excel返回值的簡單想法
最近在使用 Maatwebsite\Excel 擴(kuò)展進(jìn)行 excel 的導(dǎo)出功能,具體怎么操作,這里不詳細(xì)說了,通過下面代碼導(dǎo)出:
//導(dǎo)出excel【$head是excel表頭,$list是數(shù)據(jù)】
return Excel::download(new CustomerExport($head, $list), date('YmdHis') . '.xls');
我本著好奇打印這個返回值:
print_r(Excel::download(new CustomerExport($head, $list), date('YmdHis') . '.xls'));
結(jié)果如下:
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] =>
)
很明顯他是個對象。
因為我是前后端分離的,接口也是直接上面代碼的,前端同學(xué)使用 a 標(biāo)簽跳到接口地址進(jìn)行下載的,可以成功。但是打開 F12 的 network 查看返回值,前端拿到的是文件流
為什么直接運(yùn)行接口返回的是個對象,前端拿到居然變?yōu)槲募髁耍?/p>
原來是返回的時候,自動給返回頭加了兩個參數(shù)
Content-Disposition:attachment; filename=20221208152026.xls
Content-Type:application/vnd.ms-excel
Content-Disposition 不就是對象里面的頭消息嘛。
關(guān)于“Laravel8怎么快速導(dǎo)出excel返回值”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“Laravel8怎么快速導(dǎo)出excel返回值”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。