Php/docs/rararchive.getentries
RarArchive::getEntries
rar_list
(PECL rar >= 2.0.0)
RarArchive::getEntries -- rar_list — Get full list of entries from the RAR archive
说明
面向对象风格 (method):
public RarArchive::getEntries ( ) : array|false
过程化风格:
rar_list
( RarArchive $rarfile
) : array|false
Get entries list (files and directories) from the RAR archive.
Note:
If the archive has entries with the same name, this method, together with RarArchive
foreach
iteration and array-like access with numeric indexes, are the only ones to access all the entries (i.e., RarArchive::getEntry() and therar://
wrapper are insufficient).
更新日志
版本 | 说明 |
---|---|
PECL rar 3.0.0 | Support for RAR archives with repeated entry names is no longer defective. |
范例
Example #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)
Example #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);?>