RarArchive::setAllowBroken
(PECL rar >= 3.0.0)
RarArchive::setAllowBroken — 壊れたアーカイブのオープンを許可するかどうかを設定する
説明
オブジェクト指向型 (メソッド)
public RarArchive::setAllowBroken
( bool $allow_broken
) : bool
手続き型:
rar_allow_broken_set
( RarArchive $rarfile
, bool $allow_broken
) : bool
このメソッドは、壊れたアーカイブの読み込みを許可するか、 あるいはアーカイブからエントリを抽出する操作をすべて失敗させるかを設定します。 壊れたアーカイブとは、ファイルのオープン時には何もエラーが検出されないのに エントリを読み込むときにエラーが発生するようなアーカイブのことです。
パラメータ
rarfile
- rar_open() でオープンした RarArchive オブジェクト。
allow_broken
- 壊れたファイルの読み込みを許可する (
true
) か許可しない (false
) か。
返り値
true
を返します。失敗した場合に false
を返します。
失敗するのは、既にファイルが閉じられているときだけです。
例
例1 オブジェクト指向型
<?phpfunction 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));?>
上の例の出力は、 たとえば以下のようになります。
RarEntry for file "file1.txt" (52b28202) int(1)
例2 手続き型
<?phpfunction 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));?>