RarArchive::getEntries

rar_list

(PECL rar >= 2.0.0)

RarArchive::getEntries -- rar_listObtener la lista completa de entradas del archivo RAR

Descripción

Estilo orientado a objetos (método):

public array RarArchive::getEntries ( void )

Estilo por procedimientos:

array rar_list ( RarArchive $rarfile )

Obtener la lista de entradas (archivos y directorios) de el archivo RAR.

Nota:

Si el archivo tiene entradas con el mismo nombre, este método, junto con RarArchive foreach iteraciona y otorga un acceso array-like con índices numéricos, únicos para acceder a todas las entradas (por ejemplo, RarArchive::getEntry() y el rar:// wrapper son insuficientes).

Parámetros

rarfile

Un objeto RarArchive, abierto con rar_open().

Valores devueltos

rar_list() devuelve array de objetos RarEntry o FALSE en caso de error.

Historial de cambios

Versión Descripción
3.0.0 Soporte para archivos RAR con nombres entrada repetidos que ya no produce deficiencias.

Ejemplos

Ejemplo #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 retrieve entries.");

echo 
"Found " count($rar_entries) . " entries.\n";

foreach (
$rar_entries as $e) {
    echo 
$e;
    echo 
"\n";
}
$rar_arch->close();
?>

El resultado del ejemplo sería algo similar a:

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

Ejemplo #2 Estilo por procedimientos

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

Ver también

add a note add a note

User Contributed Notes 1 note

up
1
grap at hot dot ee
1 year ago
Can be usefult for many, probably:
<?php
$path 
= 'path/to/archive';

$archive = RarArchive::open($path);
$list       = $archive ->getEntries();
foreach (
$list as $entity) {
   
//print just title of file from archive(use getters to access other fields, etc)
   
echo $value->getName();
}
?>
To Top