ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
文档地址:https://www.php.net/manual/zh/class.rararchive.php ### 代码 ``` final class RarArchive implements Traversable { /* 方法 */ public close(): bool // 关闭RAR存档并释放所有资源 public getComment(): string // 从RAR存档中获取注释文本 public getEntries(): array|false // 从RAR归档中获取条目的完整列表 public getEntry(string $entryname): RarEntry|false //从RAR归档中获取条目对象 public isBroken(): bool // 测试存档是否已损坏(不完整) public isSolid(): bool //检查RAR归档是否可靠 public static open(string $filename, string $password = NULL, callable $volume_callback = NULL): RarArchive|false // 打开RAR存档 public setAllowBroken(bool $allow_broken): bool //是否允许打开损坏的存档 public __toString(): string // 获取文本表示 } ``` ### 说明 RARArchive类目前需要安装才能使用 下载并安装PHP RAR扩展php_rar才可以用。 PHP RarArchive类只支持rar压缩文件的读取和解压,不支持添加文件。 也就是说不能用PHP RarArchive来实现文件压缩。想要用PHP生成压缩文件来打包目录,可以使用ZipArchive类,支持压缩和解压文件,ZipArchive是PHP内置的,不需要安装,还可以结合bzip2和ZipArchive实现更高压缩级别的压缩。 **注意:检查是否安装rar扩展,否则是没有效果的** *![](https://img.kancloud.cn/20/da/20da7ad5b74ecb5a755c7019cfb30a77_1362x274.png)* #### 测试 使用foreach遍历 ~~~ <?php $rar_arch = RarArchive::open('test.rar'); if ($rar_arch === false) die("文件不存在或者路径不正确"); foreach ($rar_arch as $key=>$vel) { echo $key."=====".$vel."<br>"; } $rar_arch->close(); ?> ~~~ // 结果 ![](https://img.kancloud.cn/92/a7/92a77c8171025ba49cb758c25b3adc24_494x81.png)