步骤
//流的方式发送给浏览器
header("Content-Type: application/octet-stream");
//按照字节的返回给浏览器
header("Accept-Ranges: bytes");
//告诉浏览器文件的大小
header("Accept-Length: ".filesize('文件地址'));
//以附件的形式发送给浏览器(也就是弹出,下载的对话框)
header("Content-Disposition: attachment; filename=文件名称");//打开文件获取文件句柄
$handle=fopen('文件地址',"r");
//将文件直接读取完
echo fread($handle,filesize('文件地址'));
//一部分一部分的读取
// while(!feof($handle)){
// $content=fread($handle,1024);
// echo $content;
// }
fclose($handle);
具体实现
$file_path = '/home/wwwroot/nikon/app.js';download($file_path);function download($file_path) {//流的方式发送给浏览器header("Content-Type: application/octet-stream");//按照字节的返回给浏览器header("Accept-Ranges: bytes");//告诉浏览器文件的大小header("Accept-Length: ".filesize($file_path));//以附件的形式发送给浏览器(也就是弹出,下载的对话框)header("Content-Disposition: attachment; filename=".basename($file_path));//打开文件获取文件句柄$handle=fopen($file_path,"r");//将文件直接读取完//echo fread($handle,filesize($file_path));// 一部分一部分的读取while(!feof($handle)){$content=fread($handle,1024);echo $content;}fclose($handle);
}