zip_entry_name

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

zip_entry_nameディレクトリエントリの名前を取得する

警告

この関数は PHP 8.0.0 で 非推奨になります。この関数に頼らないことを強く推奨します。

説明

zip_entry_name(resource $zip_entry): string|false

指定したディレクトリエントリの名前を返します。

パラメータ

zip_entry

zip_read()により返されたディレクトリエントリ

戻り値

ディレクトリエントリの名前を返します。 失敗した場合に false を返します

変更履歴

バージョン 説明
8.0.0 この関数は非推奨になりました。オブジェクト指向のAPIを使うのが望ましいです。 ZipArchive::statIndex() を参照ください。

参考

  • zip_open() - Zip ファイルアーカイブをオープンする
  • zip_read() - Zip ファイルアーカイブの中の次のエントリを読み込む

add a note add a note

User Contributed Notes 2 notes

up
1
leandro_dealmeida at hotmail dot com
22 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
up
0
kevyn at opsone dot net
16 years ago
Big note for filename with accents.

Some Zip softwares encode accents with CP850.

So use iconv for keeping your accents SAFE !
To Top