public function download() {
//文件名
$filename=input('filename');
// $file_dir = $_SERVER["DOCUMENT_ROOT"] . DS . 'uploads' . "/" . $input_data['url']; //下载文件存放目录
$file_dir= ROOT_PATH.'public' . DS . 'uploads' . "/". 'download' . "/".$filename ; //下载文件存放目录 // dump($file_dir);
// die;
// //检测文件是否存在
if(!file_exists($file_dir)){
echo '找不到文件';
exit;
}else {
//打开文件
$file2 = fopen($file_dir,'r');
//输入文件标签
Header("Content-type:application/octet-stream");
Header("Accept-Ranges:bytes");
Header("Accept-Length:" . filesize($file_dir));
Header("Content-Disposition:attachment;filename=" . $filename);
ob_clean();//重点!!!
flush();//重点 可以清除文件中多余的路径
//输出文件内容
//读取文件内容并直接输出到浏览器
echo fread($file2,filesize($file_dir));
fclose($file2);
exit(); } }

最新文章

  1. 常见HTML的!DOCTYPE声明
  2. 【shell】 I/O重定向
  3. [GRYZ2014]最大连续子序列的和
  4. spring framework 4 源码阅读
  5. php 支持递归函数.递归函数就是调用函数本身.
  6. poj2311
  7. 浙大pat 1048 题解
  8. STM8的GPIO驱动
  9. 【1414软工助教】团队作业10——复审与事后分析(Beta版本) 得分榜
  10. javac选项以递归方式编译给定目录下的所有Java文件 - IT屋-程序员软件开发技术分享社区
  11. mui 滑块开关 进度条 以及如何获取值
  12. 搜狗浏览器或者360浏览器安装chrome 浏览器插件
  13. web自动化测试---自动化脚本设置百度搜索每页显示条数
  14. volatile的内存语义
  15. MVC ---- 怎删改查
  16. Zabbix日常监控(触发器表达式、远程执行命令、宏简等)简单记录
  17. Hadoop运维手记
  18. Centos6.8配置svn
  19. 【BZOJ4800】[CEOI2015 Day2]世界冰球锦标赛 (折半搜索)
  20. easyUI参数传递Long型时,前台解析出错的问题——SKY

热门文章

  1. module.exports exports npm --save
  2. 依据系统语言、设备、url 重定向对应页面
  3. 常用插件html
  4. 接口测试断言详解(Jmeter)
  5. 认识 android-job
  6. 不要和SB理论
  7. squid之------基础知识
  8. JS 验证码的实现
  9. Lambda学习总结(一)--函数式接口
  10. 4.华为路由交换技术_IP路由选择原理(上)