为什么此zip函数忽略/跳过文件?

时间:2019-05-25 20:55:37

标签: php

我构建了一个应用程序,该应用程序将HTML canvas元素上载到服务器上的目录,然后压缩并下载该目录。

第一部分(上传画布元素)运行良好。所有.png文件都100%的时间上载。但是,每当我压缩并下载目录内容时,似乎文件就会丢失/跳过。

这是我用来压缩目录的代码:

if($x == $l) { // $x = number of .PNGs, $l = expected number
  $zip = new ZipArchive();
  $zipPath = "../titles/" . $folder . ".zip";
  if ($zip->open($zipPath, ZIPARCHIVE::CREATE )!==TRUE) {
    exit("cannot open" . $zipPath> . "\n");
  }

  $list = scandir($path);
  foreach($list as $value) {
  $ex = explode(".", $value);
    if($ex[1]=="png") {
      $zip->addFile($path.$value, $value);
    }
  }

  $zip->close();
  echo "titles/" . $folder . ".zip"; // Sends path back to browser for download
}

没有一致的模式,文件从zip文件夹中丢失。有时候它们都会在那里,但更多时候甚至会丢失一些。

有人知道这是什么原因/如何解决?谢谢!

0 个答案:

没有答案