2011-02-13 106 views
2

我試圖創建空的/非空的zip存檔。
使用的代碼如下。php zip存檔

結果:什麼也沒有發生。
沒有錯誤,但也沒有結果。

任何解釋讚賞。

 
$zip = new ZipArchive(); 
$zip->open('/home/admin/domains/domain.com/public_html/xxx_zip.zip', ZIPARCHIVE::CREATE); 
$zip->addFile('/home/admin/domains/domain.com/public_html/xxxxxx.css'); 
#$zip->addEmptyDir('.'); //also tried 
$zip->close(); 

可用
郵編啓用
擴展版本$編號:php_zip.c,V 1.1.2.50 2009年3月1日17點35分25秒iliaa精通$
郵編版本1.8.11
Libzip 0.9.0版本

+0

您檢查您有權寫呢?這些函數返回什麼? – Orbling 2011-02-13 18:24:53

回答

1

ZipArchive方法通過返回false來指示失敗。你檢查了嗎?你檢查了getStatusString嗎?

0

退房其他的例子,但是這是我得到它的工作:

<?php 

     $dirArray = array(); 

     /* creates a compressed zip file */ 
     $zip = new ZipArchive; 
     if ($zip->open('dataminefiles.zip', ZIPARCHIVE::CREATE) !== TRUE) { 
      die ("Could not open archive"); 
     } 
     // open the current dir 
     if ($handle = opendir('.')) { 
     while (false !== ($entry = readdir($handle))) { 
      // ignore hidden files   
      if ($entry != "." && $entry != "..") { 
      // only zip specific files 
       if (substr($entry,-3,3) == "jpg" || substr($entry,-3,3) == "pdf" || substr($entry,-3,3) == "lsx" || substr($entry,-3,3) == "xls" || substr($entry,-3,3) == "doc" || substr($entry,-3,3) == "txt" || substr($entry,-3,3) == "png" || substr($entry,-3,3) == "gif" || substr($entry,-3,3) == "peg") { 
        // if allowed, add them to the array 
        $dirArray[] = $entry; 
       } 
      } 
     } 
     closedir($handle); 
    } 

     $indexCount = count($dirArray); 
     sort($dirArray); 
      // loop through the files and add them to the zip file 
     for($index=0; $index < $indexCount; $index++) { 
       $file = "{$dirArray[$index]}"; 
       $zip->addFile($file, $file); 
     } 
    // close the zip file 
     $zip->close(); 

    ?>