RarArchive::setAllowBroken
(PECL rar >= 3.0.0)
Whether opening broken archives is allowed
Description
Oop (method):
Procedural:
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.
Parameters
rarfileA
RarArchiveobject, opened withrar_open().allow_brokenWhether to allow reading broken files (true) or not (false).
Return Values
Returns true Falseforfailure. It will only fail if the file has already been closed.
Examples
Oop
<?php
function retnull() { return null; }
$file = dirname(__FILE__) . "/multi_broken.part1.rar";
/* Third argument omits "volume not found" message */
$a = RarArchive::open($file, null, 'retnull');
$a->setAllowBroken(true);
foreach ($a->getEntries() as $e) {
echo "$e\n";
}
var_dump(count($a));
?>The above example will output something similar to:
RarEntry for file "file1.txt" (52b28202)
int(1)Procedural
<?php
function retnull() { return null; }
$file = dirname(__FILE__) . "/multi_broken.part1.rar";
/* Third argument omits "volume not found" message */
$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));
?>See Also
RarArchive::isBroken