2013-07-17 141 views
0

我创建了一个名为'files.zip'的zip文件。我有我的property_image文件夹中的图像。我扫描了该目录并获得了我需要的文件类型。 '$ prop_image'是另一个具有图像名称的数组。如果一个图像文件(变量'$ file1')在该数组中,那么我试图将文件添加到zip文件中。从目录获取文件并将其添加到zip文件

 $zip = new ZipArchive(); 
     $filename = "files.zip"; 

     if ($zip->open($filename, ZipArchive::CREATE)!==TRUE) { 
      exit("cannot open <$filename>\n"); 
     } 

     $dir = './property_image'; 
     $file1 = scandir($dir); 
     foreach($file1 as $feel){ 
      $userfile_extn = substr($feel, strrpos($feel, '.')+1); 
      if($userfile_extn === 'jpg' || $userfile_extn === 'png' || $userfile_extn === 'gif' || $userfile_extn === 'jpeg'){ 
       if(in_array($feel, $prop_image)){ 

        $zip->addFile("$feel", basename($feel)); 
       } 

      } // end of if($extension === 
     } 

     $zip->addFile("$File", basename($File)); 
     $zip->close(); 

此代码仅增加了“$文件”成zip文件,如果我注释掉的代码:

$zip->addFile("$feel", basename($feel)); 

我需要从目录中哪些是变量中“$ prop_image添加这些文件'在zip文件中。

我该怎么做?

回答

0

我解决了它。

这可能对别人有所帮助,所以我发布了我的答案。那很简单。我只需要提供保存图像的文件夹名称。

这样的:

$zip->addFile("./property_image/$feel", basename($feel)); 

代替::

$zip->addFile("$feel", basename($feel)); 
相关问题