(PECL rar >= 3.0.0)
RarArchive::setAllowBroken — Открывать ли поврежденные архивы
Объектно-ориентированный стиль (method):
$allow_broken
) : boolПроцедурный стиль:
Этот метод определяет, можно ли пытаться читать поврежденный архив, или все операции с ним должны заканчиваться ошибкой. Поврежденные архивы - это такие архивы, которые открываются без ошибок, но при попытке прочитать записи возникают ошибки.
rarfile
Объект RarArchive, открытый с помощью rar_open().
allow_broken
Разрешать ли работу с поврежденными архивами (TRUE
) или нет (FALSE
).
Возвращает TRUE
или FALSE
в случае возникновения ошибки. Ошибка может возникнуть только если файл уже закрыт.
Пример #1 Объектно-ориентированный стиль
<?php
function retnull() { return null; }
$file = dirname(__FILE__) . "/multi_broken.part1.rar";
/* третий аргумент подавляет сообщение "volume not found" */
$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";
/* третий аргумент подавляет сообщение "volume not found" */
$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));
?>