(PECL rar >= 3.0.0)
RarArchive::setAllowBroken — 是否允许打开损坏的存档
面向对象风格(方法)
过程式风格
此方法定义是否可以读取损坏的存档,或者所有试图提取存档条目的操作都将失败。损坏的存档是指在打开文件时没有检测到错误,但在读取条目时发生错误的存档。
范例 #1 面向对象风格
<?php
function retnull() { return null; }
$file = dirname(__FILE__) . "/multi_broken.part1.rar";
/* 第三参数省略 "卷未找到" 消息 */
$a = RarArchive::open($file, null, 'retnull');
$a->setAllowBroken(true);
foreach ($a->getEntries() as $e) {
echo "$e\n";
}
var_dump(count($a));
?>
上面的例子将输出类似于
RarEntry for file "file1.txt" (52b28202) int(1)
范例 #2 过程式风格
<?php
function retnull() { return null; }
$file = dirname(__FILE__) . "/multi_broken.part1.rar";
/* 第三参数省略 "卷未找到" 消息 */
$a = rar_open($file, null, 'retnull');
rar_allow_broken_set($a, true);
foreach (rar_list($a) as $e) {
echo "$e\n";
}
var_dump(count($a));
?>