解压缩函数创建隐藏的系统文件


PHP Unzip function creating hidden system files

我有下面的代码(函数的一部分),我在我的wordpress网站上运行。它工作得很好,但它也会为每个文件创建一个系统文件(以'.'开头)。这通常不会是一个问题,但我的HTML5音频播放器拾取了这些文件,显然不能播放它们,所以看起来播放器坏了。

是否有一种方法来阻止这些文件的创建从它的Zip方面?或者我必须从玩家的角度阻止它?

我宁愿停止创建它们,因为它们占用空间。

代码是:

   // Unzip files to temp unzip folder, ignoring anything that is not a .mp3 extension
   $zip = new ZipArchive();
   $filename = $zip_file_path;
   if ($zip->open($filename)!==TRUE) {
      exit("cannot open <$filename>'n");
   }
   for ($i=0; $i<$zip->numFiles;$i++) {
      $info = $zip->statIndex($i);
      $file = pathinfo($info['name']);
      if(strtolower($file['extension']) == "mp3") {
           file_put_contents($temp_unzip_path.'/'.basename($info['name']), $zip->getFromIndex($i));
      } else {
      $zip->deleteIndex($i);
      }
   }
   $zip->close();

为什么不通过检查文件名的第一个字符不是句号来添加mp3条件呢?

      if(strtolower($file['extension']) == "mp3" && $info['name'][0] != '.') {