RarArchive::getEntries

rar_list

(PECL rar >= 2.0.0)

RarArchive::getEntries -- rar_listObtém a lista completa de entradas do arquivo RAR

Descrição

Estilo orientado a objetos (method):

public RarArchive::getEntries(): array|false

Estilo procedural:

rar_list(RarArchive $rarfile): array|false

Obtém a lista de entradas (arquivos e diretórios) do arquivo RAR.

Note:

Se o arquivo tiver entradas com o mesmo nome, este método, juntamente com a iteração RarArchive foreach e o acesso tipo array com índices numéricos, são os únicos a acessar todas as entradas (ou seja, RarArchive::getEntry() e o empacotador rar:// são insuficientes).

Parâmetros

rarfile

Um objeto RarArchive, aberto com rar_open().

Valor Retornado

rar_list() retorna um array de objetos RarEntry ou false em caso de falha.

Registro de Alterações

Versão Descrição
PECL rar 3.0.0 O suporte para arquivos RAR com nomes de entrada repetidos não apresenta mais defeitos.

Exemplos

Example #1 Estilo orientado a objetos

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

O exemplo acima produzirá algo semelhante a:

Found 2 entries.
RarEntry for file "tese.txt" (23b93a7a)
RarEntry for file "unrardll.txt" (2ed64b6e)

Example #2 Estilo procedural

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

Veja Também