2011-03-31 33 views
1

可能重複:
How to zip a whole folder using PHP如何在php中下載壓縮文件?

嗨, 我創造了php.The使用zipArchive一個壓縮文件夾壓縮文件包含一個文件夾(在它的文件)和文件。我正在使用下面的代碼來下載壓縮文件:

$file_path = "zip/test.zip"; 
header('Content-Type: application/zip'); 
header('Content-disposition: attachment; filename=download.zip'); 
header('Content-Length: ' . filesize($file_path)); 
readfile($file_path); 

該文件夾被下載。但我無法解壓縮它。 指定的錯誤是「解壓縮失敗」。 我可以使用相同的代碼下載單個文件,但不能在文件夾中下載文件。 請幫助.. 下面是壓縮文件的代碼:

$zip = new ZipArchive; 
if ($zip->open($file_path,ZIPARCHIVE::CREATE) === TRUE) { 

    if($zip->addEmptyDir('dir1')) { 
     $zip->addFile($filepath,$destinationPath); 
     if($zip->addEmptyDir('Files')) { 
      $zip->addFile($filepath2,$destinationPath2); 
     } 
    } 
} 
+0

你應該顯示你用來創建壓縮文件的代碼 – 2011-03-31 08:39:00

+0

我已經添加了壓縮文件的代碼。這些路徑是預定義的 – Sangam254 2011-03-31 08:47:56

回答

0

我得到的代碼工作... 需要添加一個$ zip-> close()方法的代碼。

+0

但是[這是自動完成的](http://uk.php.net/manual/en/function.ziparchive-close.php)在腳本的末尾,如果你把它排除在外。 – 2011-03-31 10:47:40