Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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压缩一个没有循环的文件夹_Php_Loops_Zip_Ziparchive - Fatal编程技术网

php压缩一个没有循环的文件夹

php压缩一个没有循环的文件夹,php,loops,zip,ziparchive,Php,Loops,Zip,Ziparchive,使用php,我可以使用以下代码进行压缩 $zip = new ZipArchive; if ($zip->open ('test.zip', ZipArchive::CREATE)) { $zip->addFile('img1.jpg', 'user.jpg'); $zip->addFile('logo.jpg', 'file.jpg'); $zip->addFile('avatar.jpg', 'av.jpg'); //or we can

使用php,我可以使用以下代码进行压缩

$zip = new ZipArchive;
if ($zip->open ('test.zip', ZipArchive::CREATE)) {
    $zip->addFile('img1.jpg', 'user.jpg');
    $zip->addFile('logo.jpg', 'file.jpg');
    $zip->addFile('avatar.jpg', 'av.jpg');
    //or we can even loop a directory
   foreach(glob($dir . '/*') as $file)
    {
       //add each file from the directory
    }
    //end loop

    $zip->close();
    echo 'Zipped !';
} else {
    echo 'failed';
}
?>

我的问题是,我们能在不循环的情况下压缩整个文件夹吗

  $zip = new ZipArchive;
    if ($zip->open ('test.zip', ZipArchive::CREATE)) {
     $zip->addFolder('bla bla'); //like this,so that the entire files in it will be added
         $zip->close();
        echo 'Zipped !';
    } else {
        echo 'failed';
    }
?>

实现最终必须循环。不幸的是,
ZipArchive
没有公开这样一个可以为您实现这一点的函数

看看在哪里可以得到一个现成的函数来完成这个任务