ZipArchive::getFromIndex

(PHP 5 >= 5.2.0, PHP 7, PHP 8, PECL zip >= 1.1.0)

ZipArchive::getFromIndexDevuelve el contenido de la entrada usando su índice

Descripción

public ZipArchive::getFromIndex(int $index, int $len = 0, int $flags = 0): string|false

Devuelve el contenido de la entrada usando su índice.

Parámetros

index

El índice de la entrada

len

La longitud que se see desde la entrada. Si es 0, entonces toda la entrada se lee.

flags

Las flags usadas para abrir el fichero. Los siguientes valores pueden ser Ored.

  • ZipArchive::FL_UNCHANGED

  • ZipArchive::FL_COMPRESSED

Valores devueltos

Devuelve el contenido de la entrada si se ejecutó con éxito o false en caso de error.

Ejemplos

Ejemplo #1 Obtener el contenido del fichero

<?php
$zip
= new ZipArchive;
if (
$zip->open('test.zip') === TRUE) {
echo
$zip->getFromIndex(2);
$zip->close();
} else {
echo
'falló';
}
?>

Ver también

add a note add a note

User Contributed Notes 5 notes

up
3
Ruben
9 years ago
For detecting folders use function ::getNameIndex:

//$zip = ZipArchive::open()
$entry = $zip->getNameIndex($i);
$isDir = (substr($entry, -1, 1) == '/');

Thanks to Alex Howansky @ http://stackoverflow.com/a/19299626/2747584
up
1
StanE
10 years ago
Unlike what "jana.vasseru" said 7 years ago, this method does not return FALSE for folders (anymore?). It seems that there is no way to find out if an entry is a directory of file.
up
0
poorpal at example dot com
9 years ago
both getFromIndex and getFromName leak memory. Beware specially if you use them inside a long running loop. Even closing and re-opening the zip file doesn't help.
up
0
matt3k
11 years ago
Note, length is in characters and not bytes.
up
-4
jana.vasseru
17 years ago
Note that getFromIndex returns false for directories.
To Top