php[world] 2015 Call for Speakers

ZipArchive::getFromIndex

(No version information available, might only be in Git)

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

Descripción

string ZipArchive::getFromIndex ( int $index [, int $length = 0 [, int $flags ]] )

Devuelve el contenido de la entrada usando su índice.

Parámetros

index

El índice de la entrada

length

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
2
matt3k
1 year ago
Note, length is in characters and not bytes.
up
1
StanE
5 months 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
Ruben
16 days 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
0
poorpal at example dot com
2 months 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
jana.vasseru
7 years ago
Note that getFromIndex returns false for directories.
To Top