ZipArchive::locateName
(PHP 5 >= 5.2.0, PECL zip >= 1.5.0)
ZipArchive::locateName — Gibt den Index eines Archiveintrags zurück
Beschreibung
int ZipArchive::locateName
( string
$name
[, int $flags
] )Lokalisiert einen Eintrag unter Verwendung seines Namens.
Parameter-Liste
-
name -
Der Name des Eintrags, nach dem gesucht werden soll.
-
flags -
Die Funktion gibt den Index der Datei namens fname im Archiv zurück. Die Flags können miteinander kombiniert werden, soll keines davon genutzt werden, sollte 0 verwendet werden.
-
ZipArchive::FL_NOCASE -
ZipArchive::FL_NODIR
-
Rückgabewerte
Gibt im Erfolgsfall den Index eines Eintrags zurück. Im Fehlerfall wird FALSE zurückgegeben.
Beispiele
Beispiel #1 Ein Archiv erstellen und es mit locateName verwenden
<?php
$file = 'testlocate.zip';
$zip = new ZipArchive;
if ($zip->open($file, ZipArchive::CREATE) !== TRUE) {
exit('Fehler');
}
$zip->addFromString('eintrag1.txt', 'Eintrag #1');
$zip->addFromString('eintrag2.txt', 'Eintrag #2');
$zip->addFromString('dir/eintrag2d.txt', 'Eintrag #2');
if (!$zip->status == ZipArchive::ER_OK) {
echo "Fehler beim Schreiben des ZIP\n";
}
$zip->close();
if ($zip->open($file) !== TRUE) {
exit('Fehler');
}
echo $zip->locateName('eintrag1.txt') . "\n";
echo $zip->locateName('eiNtrag2.txt') . "\n";
echo $zip->locateName('eiNtrag2.txt', ZipArchive::FL_NOCASE) . "\n";
echo $zip->locateName('einTRag2d.txt', ZipArchive::FL_NOCASE|ZipArchive::FL_NODIR) . "\n";
$zip->close();
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
0 1 2