兼容ie6瀏覽器的php下載文件代碼分享
PS:這段代碼在win系統(tǒng)下跑沒有問題,楓哥親測可用.如果用的是linux或是其他系統(tǒng),要要諸位自行測試下啦.
$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);
這個(gè)代碼是楓哥從國外的一個(gè)站點(diǎn)上找到的,親測可用.度娘出來的結(jié)果,你懂的.因此在博客上共享出來,希望對大家有用.國外的站,地址忘了,沒有辦法放出,理解下.最后,嚴(yán)肅的聲明下:這個(gè)代碼不是我寫的,是轉(zhuǎn)載的.
相關(guān)文章
使用Discuz關(guān)鍵詞服務(wù)器實(shí)現(xiàn)PHP中文分詞
這篇文章主要介紹了使用Discuz關(guān)鍵詞服務(wù)器實(shí)現(xiàn)PHP中文分詞的方法以及代碼實(shí)例,需要的朋友可以參考下2014-03-03在Mac OS上搭建Nginx+PHP+MySQL開發(fā)環(huán)境的教程
這篇文章主要介紹了在Mac OS上安裝配置Nginx+PHP+MySQL開發(fā)環(huán)境的教程,雖然Mac自帶PHP,但還是要注意一下php-fpm報(bào)錯(cuò)問題的發(fā)生,需要的朋友可以參考下2015-12-12Laravel ORM對Model::find方法進(jìn)行緩存示例詳解
這篇文章主要給大家介紹了關(guān)于Laravel ORM對Model::find方法進(jìn)行緩存的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2018-03-03PHP中比較兩個(gè)字符串找出第一個(gè)不同字符位置例子
這是一個(gè)在stackoverflow上的問題。 給出兩個(gè)長度相等的字符串,找出這兩個(gè)字符串中第一個(gè)不同的字符位置。2014-04-04詳解Laravel設(shè)置多態(tài)關(guān)系模型別名的方式
這篇文章主要介紹了Laravel 中簡單設(shè)置多態(tài)關(guān)系模型別名的方式,需要的朋友可以參考下2019-10-10php實(shí)現(xiàn) master-worker 守護(hù)多進(jìn)程模式的實(shí)例代碼
這篇文章主要介紹了php實(shí)現(xiàn) master-worker 守護(hù)多進(jìn)程模式的實(shí)例代碼,代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值 ,需要的朋友可以參考下2019-07-07