thinkphp5.1 文件下载

浏览:3712 发布日期:2018/08/28 分类:ThinkPHP5专区 关键字: thinkphp5 tp5 download 文件下载
最近有好几个控制器用到打包下载功能,如是想起TP5.1新增的一个download功能。使用方便简单,如下:导出内容:
$data = model()->getContent($id);
$filename = 'content.txt';
return download($data,$filename)->isContent(true);
导出压缩文件:
$savepath = env('runtime_path')."/backup.zip";
require_once(env('extend_path').'/libs/PclZip.php');
$zip = new \PclZip($savepath);
$zip->create($path.$file,PCLZIP_OPT_REMOVE_PATH,$path);
        
$filename = basename($savepath);
return download($savepath,$filename)->mimeType('zip')->isDestroy(true);
自行增加了一个download参数isDestroy(true);即在下载完成后删除原文件。
更改了think\response\Download.php如下:$output = $this->isContent ? $data : file_get_contents($data);
if ($this->isDestroy && !$this->isContent) {
     unlink($data);
}
return $output;
最佳答案
评论( 相关
后面还有条评论,点击查看>>