PHP 5.4.31 Released

zip_entry_name

(PHP 4 >= 4.1.0, PHP 5 >= 5.2.0, PECL zip >= 1.0.0)

zip_entry_nameDevuelve el nombre de la entrada de un directorio

Descripción

string zip_entry_name ( resource $zip_entry )

Devuelve el nombre de una entrada de directorio específica.

Parámetros

zip_entry

Una entrada de directorio devuelta por zip_read().

Valores devueltos

El nombre de la entrada de directorio.

Ver también

add a note add a note

User Contributed Notes 2 notes

up
0
kevyn at opsone dot net
5 years ago
Big note for filename with accents.

Some Zip softwares encode accents with CP850.

So use iconv for keeping your accents SAFE !
up
0
leandro_dealmeida at hotmail dot com
11 years ago
If you want to get the real name of the file without the directory name, you can just use the function basename() as the follow:

<?
$zip_dir
= "./import/";
$zip = zip_open($zip_dir."import.zip");
if (
$zip) {
    while (
$zip_entry = zip_read($zip)) {

       
$file = basename(zip_entry_name($zip_entry));
       
$fp = fopen($zip_dir.basename($file), "w+");
       
        if (
zip_entry_open($zip, $zip_entry, "r")) {
           
$buf = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
           
zip_entry_close($zip_entry);
        }
       
          
fwrite($fp, $buf);
       
fclose($fp);
       
        echo
"The file ".$file." was extracted to dir ".$zip_dir."\n<br>";
    }
   
zip_close($zip);
}
?>

Thefore you can extract files without concern with the directory that is set inside the zip source.

Remember to give write permission (w) on that directory.

Hello from Brazil.
Leandro
To Top