用于下载超过2GB图像ZIP的PHP脚本

时间:2014-03-24 10:56:30

标签: php apache

在服务器上,我为images创建了Zip文件.zip的大小超过2 GB。我想下载zip文件..有时候文件下载在使用下面的脚本时停止或失败。我有更改服务器变量..

if (!$filename) {
    // if variable $filename is NULL or false display the message
    echo $err;
} else {
    // define the path to your download folder plus assign the file name
    $ordercode = $_GET['ordercode'];
    $refId = $_GET['refId'];        

    $path = 'files/'.$refId.'/'.$ordercode.'/'.$filename;

    // check that file exists and is readable
    if (file_exists($path) && is_readable($path)) {
        // get the file size and send the http headers
        $size = filesize($path);
        header('Content-Type: application/octet-stream');
        header('Content-Length: '.$size);
        header('Content-Disposition: attachment; filename='.$filename);
        header('Content-Transfer-Encoding: binary');

        // open the file in binary read-only mode
        // display the error messages if the file can´t be opened
        $file = @ fopen($path, 'rb');
        if ($file) {
            // stream the file and exit the script when complete
            fpassthru($file);
            exit;
        } else {
            echo $err;
        }
    } else {
        echo $err;
    }
}

1 个答案:

答案 0 :(得分:0)

通过在代码上方写下两行来尝试:

ini_set('max_execution_time', 10000);//you can change this value
ini_set("memory_limit", "6400M");//you can change this value