zip_entry_name

(PHP 4 >= 4.1.0, PECL)

zip_entry_name -- Retrieve the name of a directory entry

说明

string zip_entry_name ( resource zip_entry )

Returns the name of the specified directory entry.

参数

zip_entry

A directory entry returned by zip_read().

返回值

The name of the directory entry.


add a note add a note User Contributed Notes
leandro_dealmeida at hotmail dot com
28-Sep-2002 12:21
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