列出另一个zip文件中的zip文件中的文件

时间:2014-02-16 14:06:30

标签: php zip ziparchive

我正在开发一个递归显示zip文件中文件列表的函数。可能会发生另一个zip文件中的zip文件,我想像文件夹一样显示其内容。

我仔细阅读了this question,但我还没丢。理想情况如果我可以使用getStream获取内部邮政编码并将此流发送到另一个ziparchive::open,那将是完美的,但我没有这么多。

我尝试过的事情(只是为了测试):

尝试1:

$data = file_get_contents('outer.zip');
$data64 = base64_encode($data);

$zip = new ZipArchive();
$r = $zip->open('data::text/plain;base64,'.$data64);
var_dump($r);

if($r){
    $zip->close();
}

尝试2:

$zip = new ZipArchive();
$r = $zip->open('zip://outer.zip#inner.zip');
var_dump($r);

if($r){
    $zip->close();
}

如果我必须递归解压缩任何文件到temp只是为了列出里面的文件,特别是对于大文件,它将是如此缓慢和臃肿。在这一点上,我正在寻求shell_exec解决方案。

0 个答案:

没有答案