// 下载文件 public function downFile(){ $file_id = $this->request->get('file_id/d'); if (!$file_id){ $this->error('参数错误'); } //获取文件信息 $fileInfo = Db::table('file')->find($file_id); if (!$fileInfo || !$fileInfo['file_url']){ $this->error('文件不存在或无下载链接'); } $url = $fileInfo['file_url']; $info = get_headers($url, true); $size = $info['Content-Length']; header("Content-type:application/octet-stream"); //去掉`?`后面的查询参数 /*$filename = $url; if (false !== stripos($url, '?')) { $filename = substr($url, 0, stripos($url, '?')); }*/ //获取文件的后缀 $suffix = substr($fileInfo['file_url'],strripos($fileInfo['file_url'],'.')); // 获取文件后缀 $origin_name = $fileInfo['name'].$suffix; header("Content-Disposition:attachment;filename = " .$origin_name); header("Accept-ranges:bytes"); header("Accept-length:" . $size); $res = readfile($url); exit; }
php下载文件 前端直接访问这个url 就行了
最新推荐文章于 2024-05-14 14:38:55 发布