ZipArchive::locateName

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

ZipArchive::locateNameRetorna o índice da entrada no arquivo compactado

Descrição

public ZipArchive::locateName(string $name, int $flags = 0): int|false

Localiza uma entrada usando seu nome.

Parâmetros

name

O nome da entrada a ser procurada

flags

As opções são especificadas através da operação OR nos seguintes valores, ou 0 para nenhum deles.

Valor Retornado

Retorna o índice da entrada em caso de sucesso ou false em caso de falha.

Exemplos

Example #1 Criar um arquivo compactado e em seguida usá-lo com ZipArchive::locateName()

<?php
$file = 'testlocate.zip';

$zip = new ZipArchive;
if ($zip->open($file, ZipArchive::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();

?>

O exemplo acima produzirá:

0

1
2