【问题标题】:Find a specific file in an archive using PHP使用 PHP 在存档中查找特定文件
【发布时间】:2012-04-22 02:25:14
【问题描述】:

我有一个存档(压缩)文件。用户将其存档,因此没有遵循的标准。该文件中有几个文件夹和文件。但我只对一个文件“FOI.zip”感兴趣。 FOI.zip 是 zip 文件中的存档。

例如:主文件是我拥有并且需要搜索的.. Main.zip 中可能的结构

1.
/Main.zip
 /A
  /FOI.zip
 /B
 /C

2.
/Main.zip
 /A
  /a.zip
   /FOI.zip
 /B
 /C
3.
/Main.zip
 /XYZ
  /A
   /FOI.zip
  /B
  /C

在 PHP 中,我想递归搜索 FOI.zip 并获取 FOI.zip 的路径。 我非常感谢任何帮助。

提前谢谢你。

【问题讨论】:

    标签: php recursion zip archive


    【解决方案1】:

    如果我理解的很好,你需要在存档中找到一个FOI.zip,对吗?

    如果是,你有这个解决方案:

    <?php 
    system('unzip' . $zip file);
    system('find . | grep FOI.zip', $relative_path);
    
    // $relative_path is a where FOI.zip is, if it's empty - means no FOI.zip found.
    ?>
    

    【讨论】:

    • 存档中可能有另一个存档。所以 FOI.zip 可以在 A.zip 中,而 A.zip 在 Main.zip 中?
    • 当你没有找到任何东西时,你可以解压你在之前的压缩包中的所有压缩包。您也可以使用 GREP 找到它们..
    猜你喜欢
    • 1970-01-01
    • 2019-05-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多