1 function download($file){ 2 //文件根路径 3 $filename=$_SERVER['DOCUMENT_ROOT'].__ROOT__.'/'.$file; 4 //下载文件 5 if(!file_exists($filename)){ 6 $this->error("找不到文件"); 7 exit; 8 }else{ 9 header("Content-Type:text/html;charset=utf-8"); 10 header("Content-type:application/force-download"); 11 header("Content-Type:application/octet-stream"); 13 header("Accept-Ranges:bytes"); 14 header("Content-Length:".filesize($filename));//指定下载文件的大小 15 header('Content-Disposition:attachment;filename="'.$file.'"'); 16 //必要时清除缓存 17 ob_clean(); 18 flush(); 19 readfile($filename); 20 exit(); 21 } 22 }
简单的实现header头进行文件下载,在lnmp环境下的项目,有时需要ob_clean()清除缓存一下,在flush()刷新缓存区;
本文详细介绍了使用PHP实现文件下载的方法,包括设置header头信息、判断文件是否存在等关键步骤,并指出在LNMP环境下可能需要清除缓存以确保下载正常。
1008

被折叠的 条评论
为什么被折叠?



