Linux php zip 中文乱码

中文win32下,文件名使用GBK编码 Linux下,文件名使用UTF-8编码 解决文件名解压后乱码的问题,使用将文件名进行转码  

< ?php
   $a=zip_open('other.zip');
   while ($e=zip_read($a)){
       $fz = zip_entry_filesize($e); 
      $fn = iconv('GBK','UTF-8',zip_entry_name($e));
       if (!$fz){//dir
           mkdir($fn);
           continue;
       }
       if (!zip_entry_open($a, $e)) 
          continue;       
file_put_contents($fn, zip_entry_read($e, $fz));
       echo"$fzt$fnn";
       zip_entry_close($e);
   } 
  zip_close($a); 
  ?>

发表评论