PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ZipArchive::open> <ZipArchive::getStream
Last updated: Fri, 05 Sep 2008

view this page in

ZipArchive::locateName

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

ZipArchive::locateNameReturns the index of the entry in the archive

Описание

mixed ZipArchive::locateName ( string $name [, int $flags ] )

Locates an entry using its name.

Список параметров

name

The name of the entry to look up

flags

The function returns the index of the file named fname in archive. The flags are specified by ORing the following values, or 0 for none of them.

  • ZIPARCHIVE::FL_NOCASE

  • ZIPARCHIVE::FL_NODIR

Возвращаемые значения

Returns the index of the entry on success or FALSE on failure.

Примеры

Пример #1 Create an archive and then use it with locateName

<?php
$file 
'testlocate.zip';

$zip = new ZipArchive;
if (
$zip->open($fileZIPARCHIVE::CREATE) !== TRUE) {
    exit(
'failed');
}

$zip->addFromString('entry1.txt''entry #1');
$zip->addFromString('entry2.txt''entry #2');
$zip->addFromString('dir/entry2d.txt''entry #2');

if (!
$zip->status == ZIPARCHIVE::ER_OK) {
    echo 
"failed to write zip\n";
}
$zip->close();

if (
$zip->open($file) !== TRUE) {
    exit(
'failed');
}

echo 
$zip->locateName('entry1.txt') . "\n";
echo 
$zip->locateName('eNtry2.txt') . "\n";
echo 
$zip->locateName('eNtry2.txt'ZIPARCHIVE::FL_NOCASE) . "\n";
echo 
$zip->locateName('enTRy2d.txt'ZIPARCHIVE::FL_NOCASE|ZIPARCHIVE::FL_NODIR) . "\n";
$zip->close();

?>


add a note add a note User Contributed Notes
ZipArchive::locateName
me at nowhere dot com
03-Sep-2008 10:04
If the option ZIPARCHIVE::FL_NODIR is used, the result may be ambiguous as files with the same name may occur in various directories. In this case, the first occurence in the index whoose name matches is returned.
E.g.

<?php
$zip
->addFromString('afile.txt', 'index 0');
$zip->addFromString('double.txt', 'index 1');
$zip->addFromString('dir/double.txt', 'index 2');
?>

$zip->locateName('double.txt',ZIPARCHIVE::FL_NODIR) returns 1

ZipArchive::open> <ZipArchive::getStream
Last updated: Fri, 05 Sep 2008
 
 
show source | credits | sitemap | contact | advertising | mirror sites