我一直无法弄清楚是否有办法用php将zip解压缩到特定目录。使用
等代码时$zip->extractTo("files/");
它会将zip解压缩到目录“files”,并将所有文件放在与zip名称相匹配的目录中。我不希望上传方能够决定上传目录的名称。例如,如果我上传一个名为的拉链 “zip.pdf”包含“myimg.jpg”,当我提取它时,它的位置变为:
files/zip/myimg.jpg
我希望它在哪里
files/myimg.jpg
无论如何,我想知道是否有办法让ZipArchive不创建一个新的目录来存放解压缩的内容,或者如果我必须遍历所有解压缩的文件并在解压缩完成后移动它们。
答案 0 :(得分:2)
最安全的方法是随机播放zip内容并单独处理每个文件。也就是说,解压缩到唯一的临时目录,然后查看每个文件并做出决定。如果存在不同用户文件的冲突怎么办?不要盲目地发生这种情况。