PHP文件下载

步骤

//流的方式发送给浏览器
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);
}

posted @ 2018-06-21 10:23  TBHacker  阅读(260)  评论(0编辑  收藏  举报