兼容ie6浏览器的php下载文件代码分享 |
本文标签:php下载文件代码,兼容ie6 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); 这个代码是枫哥从国外的一个站点上找到的,亲测可用.度娘出来的结果,你懂的.因此在博客上共享出来,希望对大家有用.国外的站,地址忘了,没有办法放出,理解下.最后,严肃的声明下:这个代码不是我写的,是转载的. |