- php 我知道有个 ziparchive 类可以读取 zip 压缩包文件里面的文件列表信息。比如可以列出压缩包里面的所有文件、文件的大小等。
- 我现在想用 php 读取 rar 、7z 、gz 这种压缩包里面的文件信息,就像 ziparchive 那样。请问有哪些现成的库可以用呢?希望大家说一下,谢谢!
1
b4115Z4mRAz9P8EA Oct 3, 2023
对 PHP 读取压缩包文件有几个常用的库:
RarArchive - 用于读取 RAR 压缩文件,可以获取压缩包内文件的信息。 PHP Zip - PHP 的标准库,用于读取 ZIP 压缩文件。 PharData - PHP 的标准库,用于读取各种压缩格式如 tar 、gz 、bz2 等。 Zend\Archive - Zend 框架的压缩组件,支持各种格式的压缩包。 patchwork\jsqueeze - 一个第三方库,支持多种压缩格式。 使用方式: php ``` // 读取 RAR 示例: $rar = RarArchive::open('test.rar'); foreach ($rar as $entry) { echo $entry->getName() . PHP_EOL; } // 读取 ZIP 示例: $zip = new ZipArchive(); if ($zip->open('test.zip') === TRUE) { for($i = 0; $i < $zip->numFiles; $i++) { echo $zip->getNameIndex($i) . PHP_EOL; } $zip->close(); } ``` 主要是通过相应的库打开/解析压缩包,然后遍历获取文件信息即可。需要注意不同格式压缩包的读取库稍有不同。 |
2
ysc3839 Oct 3, 2023 via Android
|