Overview
KB
Technical FAQ
PHP Manual
CSS2 Manual
HTML Manual
JS Guide
JS Reference
PhpDock Manual
Nu-Coder Manual
PhpExpress Manual
PHP Joomla
Development
Learn PHP
 
<RarArchive::openRarArchive::__toString>
^RarArchiveLast updated: Mon, 26 Oct 2026

RarArchive::setAllowBroken

(PECL rar >= 3.0.0)

RarArchive::setAllowBroken — Whether opening broken archives is allowed

Description

Object-oriented style (method):

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

Procedural style:

function 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.

Parameters

rarfile

A RarArchive object, opened with rar_open().

allow_broken

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

Return Values

Returns true or false on failure. It will only fail if the file has already been closed.

Examples

Example #1 Object-oriented style

<?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)

Example #2 Procedural style

<?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::openRarArchive::__toString>
^RarArchiveLast updated: Mon, 26 Oct 2026