GoLang ZipArchive::locateName

request it (285)
GoLang replacement for PHP's ZipArchive::locateName [edit | history]



Do you know a GoLang replacement for PHP's ZipArchive::locateName? Write it!

PHP ZipArchive::locateName

PHP original manual for ZipArchive::locateName [ show | php.net ]

ZipArchive::locateName

(PHP 5 >= 5.2.0, PHP 7, PECL zip >= 1.5.0)

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

Description

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

Locates an entry using its name.

Parameters

name

The name of the entry to look up

flags

The flags are specified by ORing the following values, or 0 for none of them.

  • ZipArchive::FL_NOCASE

  • ZipArchive::FL_NODIR

Return Values

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

Examples

Example #1 Create an archive and then use it with ZipArchive::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();

?>

The above example will output:

0

1
2