Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取特定类型的文件并将其添加到现有zip文件 $zip=new ZipArchive(); $filename=“image/files.zip”; 如果($zip->open($filename,ZipArchive::CREATE)!==TRUE){ 退出(“无法打开”); } $zip->addFile($File),basename($File)); $zip->close();_Php_Image_Zip_Directory_Gd - Fatal编程技术网

Php 获取特定类型的文件并将其添加到现有zip文件 $zip=new ZipArchive(); $filename=“image/files.zip”; 如果($zip->open($filename,ZipArchive::CREATE)!==TRUE){ 退出(“无法打开”); } $zip->addFile($File),basename($File)); $zip->close();

Php 获取特定类型的文件并将其添加到现有zip文件 $zip=new ZipArchive(); $filename=“image/files.zip”; 如果($zip->open($filename,ZipArchive::CREATE)!==TRUE){ 退出(“无法打开”); } $zip->addFile($File),basename($File)); $zip->close();,php,image,zip,directory,gd,Php,Image,Zip,Directory,Gd,我已经在zip中添加了一个文件,它位于变量“$file”中。该文件存在于同一文件夹(图像)中。我需要在同一个zip文件中添加图像。这些图像位于“图像”文件夹中。我想我需要扫描图像并将它们添加到同一个zip中。但我不知道该怎么做 如何将特定类型(jpeg、png、gif)的文件添加到现有或新的zip文件中?我必须在zip文件的根目录中添加图像,而不是在zip文件中的任何文件夹中。图像位于一个目录(“图像”)中,我需要将它们添加到我的zip文件中,该文件也保存在同一目录中。$zip=new ZipA

我已经在zip中添加了一个文件,它位于变量“$file”中。该文件存在于同一文件夹(图像)中。我需要在同一个zip文件中添加图像。这些图像位于“图像”文件夹中。我想我需要扫描图像并将它们添加到同一个zip中。但我不知道该怎么做

如何将特定类型(jpeg、png、gif)的文件添加到现有或新的zip文件中?我必须在zip文件的根目录中添加图像,而不是在zip文件中的任何文件夹中。图像位于一个目录(“图像”)中,我需要将它们添加到我的zip文件中,该文件也保存在同一目录中。

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

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

    $zip->addFile("$File", basename($File));
    $zip->close();
如果($zip->open('source.zip')==TRUE) { 对于($i=0;$i<$zip->numFiles;$i++) { $fp=$zip->getStream($zip->getNameIndex($i)); 如果(!$fp)退出(“失败”\n); 而(!feof($fp)){ $contents=fread($fp,8192); //爆炸扩展,做任何你想做的事 } fclose($fp); } } 其他的 { echo“读取zip存档文件时出错!”; }
我就是这样解决的

$zip = new ZipArchive; 
if ($zip->open('source.zip') === TRUE) 
{ 
     for($i = 0; $i < $zip->numFiles; $i++) 
     {   
        $fp = $zip->getStream($zip->getNameIndex($i));
        if(!$fp) exit("failed\n");
        while (!feof($fp)) {
            $contents = fread($fp, 8192);
            // explode for extension and do what ever you want
        }
        fclose($fp);
     }
} 
else 
{ 
     echo 'Error reading zip-archive!'; 
} 

提供一些代码,因为我不知道如何回答你没有具体的方式你想做的事情zip_entry_open()zip_entry_close()我已经更新了我的问题,请查看一下我需要检查它们是否是图像
        $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)){
                    //echo $feel;
                    $zip->addFile("./property_image/$feel", basename($feel));
                }

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

        } // end of foreach