PHP Zip文件已损坏

时间:2014-04-01 01:17:17

标签: php file download zip corrupt

我是新来的,所以请耐心等待。我的问题是,当我创建一个zip文件,并将其作为下载发送时,它会以某种方式被破坏。创建的文件本身非常好。我尝试制作一个单独的PHP文件,其中包含测试它是否有效所需的最低PHP代码,并且下载时没有损坏。这让我相信,页面上使用的GET方法也会以某种方式搞乱下载头。如果有帮助,这是我的代码:

<?php

$phar = new PharData('./Files/Toolbox.zip');
// add all files in the project
$phar->buildFromDirectory(dirname(__FILE__) . '/Files/Toolbox');
chmod("./Files/Toolbox.zip", 0777);
$file='./Files/Toolbox.zip';
if (headers_sent()) {
    echo 'HTTP header already sent';
} else {
    if (!is_file($file)) {
        header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found');
        echo 'File not found';
    } else if (!is_readable($file)) {
        header($_SERVER['SERVER_PROTOCOL'].' 403 Forbidden');
        echo 'File not readable';
    } else {
        header($_SERVER['SERVER_PROTOCOL'].' 200 OK');
        header("Content-Type: application/zip");
        header("Content-Transfer-Encoding: Binary");
        header("Content-Length: ".filesize($file));
        header("Content-Disposition: attachment; filename=\"".basename($file)."\"");
        readfile($file);
        exit;
    }
}
?>

此外,如果有帮助,网址会如下所示:     http://website.com/download.php?key=DOWNLOADKEY

0 个答案:

没有答案