假设在public/uploads文件夹下有一个文件test.xlsx
-
在前端页面添加下载链接,用户点击该链接即可下载对应的文件。
<a href="xxxxxxx/downloadFile">下载文件</a>
2. 在后端控制器方法中,我们需要获取要下载的文件路径,并通过响应头的方式将文件发送给用户进行下载。
/*** 下载导入模板
*/
public function downloadFile()
{// 获取当前应用实例$app = app();// 获取当前应用的根目录路径$rootPath = $app->getRootPath();// 获取要下载的文件路径$filePath = $rootPath . 'public/uploads/test.xlsx';// 文件下载// 设置300秒有效期//300秒代表文件下载的有效期。download第一个参数:本地的图片,第二个参数是下载后改名为my.jpgreturn download($filePath, 'my')->expire(300);}
注意:
下载文件的路径是服务器路径而不是URL路径,如果要下载的文件不存在,系统会抛出异常。
文档地址:https://www.kancloud.cn/a173512/thinkphp6/2452912