【发布时间】:2020-06-17 12:41:05
【问题描述】:
好吧,这让我抓狂了……我抽象了代码,因为它来自一个大项目。但在我的项目中,我最终评论了所有内容,只剩下这个仍然导致问题,我不知道为什么。
$f = fopen('tmp/'.$name.'.zip', 'wb');
fwrite($f, $myzip);
fclose($f); //I can open this file manually and everything is fine
$zip = new ZipArchive;
$res = $zip->open('tmp/'.$name.'.zip'); //$res is "1"
$zip->extractTo("final/" . $unique);
$zip->close();
如您所见,我在/tmp 中编写了一个 zip 文件,此时,我可以手动打开该文件,它包含所有大小正确的文件。
但是在我把它解压到/final之后,由于某种原因,有些文件是空的......
知道是什么原因造成的吗?
【问题讨论】:
-
您是否在创建 zip 文件后,在解压之前检查文件内容?它是否包含所需的所有文件?
-
是的,只有解压后,解压后的文件是空的
-
您可以尝试提取到静态路径:
$zip->extractTo("/final/myPath/");。您是否在空文件中看到任何模式(即 - 文件扩展名)?
标签: php web zip backend archive