我将多个文件压缩成一个唯一的文件(zip),但似乎每次循环重启时它都会创建一个新文件,我该怎么做?没有足够的文档,这是我的代码:
$file1 = "test1.xls";
$files2 = array(
"test2.xls", "test3.xls"
);
$filter = new Zend_Filter_Compress(array(
'adapter' => 'Zip',
'options' => array(
'archive' => BASE_PATH .'/public/' . $this->configuracoes->get('media') . '/temp/zipped'.date('d-m-Y-H-i-s').'.zip'
)
));
$compress = $filter->filter($file1);
foreach($files2 as $file){
$compress = $filter->filter($file);
}
这只会产生一个带有test3.xls的zip。
答案 0 :(得分:2)
值得看看这个链接,在打开zip,添加文件,然后在循环外关闭它时,似乎是相同的答案。
答案 1 :(得分:2)
一个老问题,但我发现这是寻找类似的东西。
您可以将目录传递给filter
函数,它将以递归方式添加该目录中的所有文件。
即
$compress = $filter->filter('/path/to/directory/');