PHP 7.4.25 Released!

RarArchive::setAllowBroken

(PECL rar >= 3.0.0)

RarArchive::setAllowBrokenОткрывать ли повреждённые архивы

Описание

Объектно-ориентированный стиль (method):

public RarArchive::setAllowBroken(bool $allow_broken): bool

Процедурный стиль:

rar_allow_broken_set(RarArchive $rarfile, bool $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($filenull'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($filenull'retnull');
rar_allow_broken_set($atrue);
foreach (
rar_list($a) as $e) {
    echo 
"$e\n";
}
var_dump(count($a));
?>

Смотрите также

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top