Zip 函数
在线手册:中文  英文

zip_entry_name

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

zip_entry_nameRetrieve 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.

参见


Zip 函数
在线手册:中文  英文

用户评论:

kevyn at opsone dot net (2008-11-20 07:21:40)

Big note for filename with accents.
Some Zip softwares encode accents with CP850.
So use iconv for keeping your accents SAFE !

leandro_dealmeida at hotmail dot com (2002-09-27 09:21:20)

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

易百教程