PS:这段代码在win系统下跑没有问题,枫哥亲测可用.如果用的是linux或是其他系统,要要诸位自行测试下啦.

$filename = "./".$_REQUEST['name']; //这里是枫哥具体路径,只要$filename是所要下载文件的完整路径就可以.

if (!is_file($filename)) {//检测文件是否存在.

die('下载的文件好像跟TM谁私奔啦!');

}

$filepath = str_replace('\\', '/', realpath($filename));

$filesize = filesize($filepath);

$filename = substr(strrchr('/'.$filepath, '/'), 1);

$extension = strtolower(substr(strrchr($filepath, '.'), 1));

// use this unless you want to find the mime type based on extension,文件后缀格式,不解释.

$mime = array('application/octet-stream');

header('Content-Type: '.$mime);

header('Content-Disposition: attachment; filename="'.$filename.'"');

header('Content-Transfer-Encoding: binary');

header('Content-Length: '.sprintf('%d', $filesize));

header('Expires: 0');

// check for IE only headers,坑爹的IE检测,你懂的.

if (isset($_SERVER['HTTP_USER_AGENT']) &&((strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)))

{

header('Cache-Control: must-revalidate, post-check=0, pre-check=0');

header('Pragma: public');

}

else

{

header('Pragma: no-cache');

}

$handle = fopen($filepath, 'rb');

fpassthru($handle);

fclose($handle);

这个代码是枫哥从国外的一个站点上找到的,亲测可用.度娘出来的结果,你懂的.因此在博客上共享出来,希望对大家有用.国外的站,地址忘了,没有办法放出,理解下.最后,严肃的声明下:这个代码不是我写的,是转载的.

php 浏览器 兼容,兼容ie6浏览器的php下载文件代码分享相关推荐

  1. php怎么让浏览器崩溃,让IE6浏览器崩溃

    谁不恨IE6? 这个过时的浏览器折磨着每个Web开发人员和设计者. 如果你真的讨厌Internet Explorer 6,那就把下面的代码加到你的header.php模板中,当有人试图用IE6读取你的 ...

  2. JS 下载文件方法分享(解决图片文件无法直接下载和 IE兼容问题)

    场景简介 由于业务需要,经常遇到下载各类文件的需求,其中最头疼的莫过于前端下载图片了,直接给个图片文件地址会变成直接打开图片,而不是弹窗提示另存为,研究了下前端实现文件下载最便捷的方法还是创建 a 标 ...

  3. 在浏览器中Hadoop的Browse Directory不能下载文件的解决方案

    在Windows下找到:C:\Windows\System32\drivers\etc的hosts文件,事先把hosts文件属性的只读取消掉,如下图: 如果不取消只读,那么进入notepad++后会出 ...

  4. 原型界面演示浏览器设置:ie6浏览器需将《高级》选项卡中“允许活动内容在我的计算机上的文件中运行”勾选...

    转载于:https://www.cnblogs.com/zhenmingliu/archive/2012/02/22/2362578.html

  5. python 浏览器 弹 另存为_selenium webdriver 右键另存为下载文件(结合robot and autoIt)...

    最近一直在研究selenium webdriver右键菜单,发现selenium webdriver 无法操作浏览器右键菜单,如图 如果我想右键另存为,根本操作不了. 也有在网上看到webdriver ...

  6. IE6,IE7,FF等浏览器不兼容原因及解决办法(转)

    IE6,IE7,FF等浏览器不兼容原因及解决办法 2008-07-15 11:26 本文转载,作者:阿里巴巴前端开发,发到这里只是方便以后查看,也给各位需要的朋友. 浏览器的不兼容,大家肯定都是深恶痛 ...

  7. IE6 浏览器常见兼容问题 大汇总

    以下全文载自独行冰海 IE6以及各个浏览器常见兼容问题 大汇总 综述:虽然说IE6在2014年4月将被停止支持,但是不得不说的是,IE6的市场并不会随着支持的停止而立刻消散下去,对于WEB前端开发工程 ...

  8. html定位 浏览器兼容,IE6浏览器不支持固定定位(position:fixed)解决方案

    今天在学习的时候,突然发现在IE6浏览器下,position:fixed不管用了: 复制代码代码如下: New Document 正常普通流元素 position:fixed元素 上面的代码在IE6中 ...

  9. 强制浏览器使用兼容模式,Web.config,httpProtocol

    对于一些政府类的网站,很多支持IE6~8,而不支持使用更高版本浏览器浏览.虽然有些浏览器会自动使用兼容模式,或有些人会手动调整浏览器的兼容模式,但不是每一个人.每一款浏览器都可以做到用兼容模式.所以, ...

最新文章

  1. 网站建设中购买虚拟主机重要参数有哪些?
  2. Delegate(QLabel和QComboBox)
  3. Consumer group理解深入
  4. jupyter notebook python插件_Jupyter notebook一款非常好用的python IDE
  5. 全球顶级开源大神们现身 COSCon'20
  6. 使用VNC远程安装CentOS 7操作系统
  7. 设计模式综和实战项目x-gen系列二
  8. (56)FPGA面试题-如果连线宽度不匹配怎么办?
  9. HDOJ2026 ( 首字母变大写 ) 【水题】
  10. c语言程序设计徐立辉答案,C语言习题
  11. word文档中如何将软回车替换为硬回车
  12. 七日杀Liunx SteamCMD开服超详细教程及服务器配置需求
  13. 威尔科克森(Wilcoxon)符号秩检验:定义,运行方式
  14. JSP中response.sendRedirect()与request.getRequestDispatcher().forward(request,respon 区别
  15. 面试常问问题: 剖析ArrayList源码还不会? 看这篇就够啦 !
  16. 4748——微积分基本定理12
  17. jquery开发知识总结2
  18. Fedora 26 安装搜狗拼音输入法 sogoupinyin
  19. JAVA什么叫event_Java 的Event机制浅析
  20. c语言魔塔编程,魔塔V1.0 用C语言写的魔塔小游戏 - 下载 - 搜珍网

热门文章

  1. 从(知乎大量的数据上保持毫秒级的查询响应时间)上看什么是 TiDB?
  2. leetcode 2. Add Two Numbers | 2. 两数相加(Java)
  3. C#中重写(override)和覆盖(new)的区别
  4. 在onelogin中使用OpenId Connect Implicit Flow
  5. Spring5参考指南: SpEL
  6. MySql 中 case when then else end 的用法
  7. 操作系统中的同步和异步
  8. shell脚本命令set
  9. Linux上搭建h2引擎加载h2文件
  10. jQuery的引入和使用