PHP:强制下载.zip问题

时间:2015-11-13 13:42:25

标签: php php-5.6

我有问题强制下载存储在服务器上的zip文件。我有下面的完整脚本,这个脚本只包含函数,该函数是从一个单独的文件中调用的,其中发送了头信息。

function goZipper($files, $destination = '', $originPath = '', $overwrite = true) {
    if(file_exists($destination) && !$overwrite) {
        echo"File exists";
        return false; 
        }
    if(count($files)){
        //create a zip archive
        $zip = new ZipArchive();


$destination = $destination .'/'.'archive - '.date('m-d-Y_h:i-a').'.zip';
            if($zip->open($destination, $overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true){
                echo"Error opening destination";
                return false;
            }

            foreach($files as $file){
                $base = $originPath . $file;
                $zip->addFile($base, $file);

            }
            $zip->close();
            return($destination);
            }
            else{
                return false;
            }
    }

 function downloadZipper($fullFilePath){
 $fileName = basename($fullFilePath);

header("Content-Type: application/zip");
header("Content-Disposition: attachment; filename=$fileName");
header("Content-Length: " . filesize($fullFilePath));

readfile($fileName);
 exit;
 }

将完整服务器路径(包括文件)传递给该函数。然后,我将提取输入的基本名称提取到标题中。我无法看到任何问题。我收到错误'无法修改标题信息 - 标题已发送'

0 个答案:

没有答案