>  기사  >  백엔드 개발  >  PHP 弹出文件下载 原理 代码_PHP教程

PHP 弹出文件下载 原理 代码_PHP教程

WBOY
WBOY원래의
2016-07-13 10:19:50963검색

PHP 弹出文件下载 原理 代码

/**
 * @author      default7<default7@zbphp.com>
 * @description 演示PHP弹出下载的原理
 *
 * @param $file_name
 */
function downFile($file_name)
{
    $file_path = "/tmp/" . $file_name;
    $buffer = 102400; //一次返回102400个字节
    if (!file_exists($file_path)) {
        echo "<script type=&#39;text/javascript&#39;> alert(&#39;对不起!该文件不存在或已被删除!&#39;); </script>";

        return;
    }
    $fp = fopen($file_path, "r");
    $file_size = filesize($file_path);
    $file_data = &#39;&#39;;
    while (!feof($fp)) {
        $file_data .= fread($fp, $buffer);
    }
    fclose($fp);

    //Begin writing headers
    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: public");
    header("Content-Description: File Transfer");
    header("Content-type:application/octet-stream;");
    header("Accept-Ranges:bytes");
    header("Accept-Length:{$file_size}");
    header("Content-Disposition:attachment; filename={$file_name}");
    header("Content-Transfer-Encoding: binary");
    echo $file_data;
}


www.bkjia.comtruehttp://www.bkjia.com/PHPjc/871201.htmlTechArticlePHP 弹出文件下载 原理 代码 /** * @author default7 * @description 演示PHP弹出下载的原理 * * @param $file_name */function downFile($file_name){ $file_path = "/tmp/...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.