使用PHP&损坏ZIP文件PCLZip

时间:2014-06-17 02:52:00

标签: php zip compression archive

我遇到了一些问题,我正在使用PCLZip来创建档案。我没有得到任何错误,zip文件被创建,但是当我去查看它时,存档是空的并且在我的Windows机器上我收到错误“压缩(压缩)文件夹”本地目录zip文件“)是无效。我有以下代码:

$dir = '../downloads/liability/';
$archive = new PclZip($dir.'archive.zip');
$v_list = $archive->create($dir);
    if ($v_list == 0) {
        die("Error : ".$archive->errorInfo(true));
    }

我的目录结构是:

-admin
  --liabilityDev.php (where the above code resides)
  --index.php
  --commission.php
-downloads
  --liability
    ---one.pdf
    ---two.pdf

最终结果是在liability文件夹中,有一个名为archive.zip的文件,其中包含2个pdf,但是我收到了无效错误。 如果我没有目录变量,我将index.php和commission.php存档,并且工作正常。它让我相信它可能是一个许可问题,但我现在正在冒烟。请帮忙!

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

if(extension_loaded('zip')){
 $zip = new ZipArchive();
 if($zip->open('../downloads/liability/archive.zip', ZIPARCHIVE::CREATE)===TRUE){
   $zip->addFile('path of any normal file to be add into zip');  
 }
 $zip->close();
}  

我认为,这将满足您的需求。在实现此代码之前,请先检查zip扩展是否已加载。