Php/docs/rararchive.getentries

来自菜鸟教程
跳转至:导航、​搜索

RarArchive::getEntries

rar_list

(PECL rar >= 2.0.0)

RarArchive::getEntries -- rar_listGet 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 the rar:// wrapper are insufficient).

参数

rarfile
A RarArchive object, opened with rar_open().


返回值

rar_list() returns array of RarEntry objects 或者在失败时返回 false.


更新日志

版本 说明
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);?>

参见