php[world] 2015 Schedule Announced

ZipArchive::getFromIndex

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

ZipArchive::getFromIndexGibt den Inhalt eines Eintrags unter Verwendung seines Index zurück

Beschreibung

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

Gibt den Inhalt eines Eintrags unter Verwendung seines Index zurück.

Parameter-Liste

index

Index des Eintrags

length

Die von dem Eintrag zu lesende Länge. Falls 0, wird der gesamte Eintrag gelesen.

flags

Die Flags, die beim Öffnen des Archivs verwendet werden können. Die folgenden Werte können darauf angewendet werden (ODER verknüpft):

  • ZipArchive::FL_UNCHANGED

  • ZipArchive::FL_COMPRESSED

Rückgabewerte

Gibt im Erfolgsfall den Inhalt des Eintrags zurück. Im Fehlerfall wird FALSE zurückgegeben.

Beispiele

Beispiel #1 Den Dateiinhalt auslesen

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

Siehe auch

add a note add a note

User Contributed Notes 5 notes

up
2
matt3k
2 years ago
Note, length is in characters and not bytes.
up
1
StanE
6 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
1 month 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
3 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