RarArchive::setAllowBroken

(PECL rar >= 3.0.0)

RarArchive::setAllowBrokenWhether opening broken archives is allowed

說明

面向?qū)ο箫L格 (method):

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

過程化風格:

rar_allow_broken_set(RarArchive $rarfile, bool $allow_broken): bool

This method defines whether broken archives can be read or all the operations that attempt to extract the archive entries will fail. Broken archives are archives for which no error is detected when the file is opened but an error occurs when reading the entries.

參數(shù)

rarfile

A RarArchive object, opened with rar_open().

allow_broken

Whether to allow reading broken files (true) or not (false).

返回值

Returns true 或者在失敗時返回 false. It will only fail if the file has already been closed.

范例

示例 #1 面向?qū)ο箫L格

<?php
function retnull() { return null; }
$file dirname(__FILE__) . "/multi_broken.part1.rar";
/* Third argument omits "volume not found" message */
$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";
/* Third argument omits "volume not found" message */
$a rar_open($filenull'retnull');
rar_allow_broken_set($atrue);
foreach (
rar_list($a) as $e) {
    echo 
"$e\n";
}
var_dump(count($a));
?>

參見