我构建了一个应用程序,该应用程序将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文件夹中丢失。有时候它们都会在那里,但更多时候甚至会丢失一些。
有人知道这是什么原因/如何解决?谢谢!