RarArchive::getEntries
rar_list
(PECL rar >= 2.0.0)
RarArchive::getEntries -- rar_list — RAR アーカイブからエントリの全一覧を取得する
説明
オブジェクト指向型 (メソッド)
public RarArchive::getEntries ( ) : array|false
手続き型:
rar_list
( RarArchive $rarfile
) : array|false
エントリ (ファイルおよびディレクトリ) の一覧を RAR アーカイブから取得します。
注意:
アーカイブの中に同じ名前のエントリが存在する場合は、このメソッドを RarArchive の
foreach
と組み合わせて 数値添字の配列形式で処理するのが唯一のアクセス方法となります (つまり、 RarArchive::getEntry() とrar://
ラッパー は使えないということです)。
変更履歴
バージョン | 説明 |
---|---|
PECL rar 3.0.0 | エントリ名が繰り返される RAR アーカイブも対応するようになりました。 |
例
例1 オブジェクト指向型
<?php$rar_arch = RarArchive::open('solid.rar');if ($rar_arch === FALSE) die("Could not open RAR archive.");$rar_entries = $rar_arch->getEntries();if ($rar_entries === FALSE) die("Could not retrieve entries.");echo "Found " . count($rar_entries) . " entries.\n";foreach ($rar_entries as $e) { echo $e; echo "\n";}$rar_arch->close();?>
上の例の出力は、 たとえば以下のようになります。
Found 2 entries. RarEntry for file "tese.txt" (23b93a7a) RarEntry for file "unrardll.txt" (2ed64b6e)
例2 手続き型
<?php$rar_arch = rar_open('solid.rar');if ($rar_arch === FALSE) die("Could not open RAR archive.");$rar_entries = rar_list($rar_arch);if ($rar_entries === FALSE) die("Could retrieve entries.");echo "Found " . count($rar_entries) . " entries.\n";foreach ($rar_entries as $e) { echo $e; echo "\n";}rar_close($rar_arch);?>