使用PHP压缩Linux服务器中的ZIP文件

时间:2016-05-11 13:35:50

标签: php linux zip compression

我正在尝试在linux中创建一个文件夹的.zip文件。

首先我去压缩文件夹的位置:

shell_exec('cd /var/www/vhosts/website/test/');

文件夹测试有文件夹testzip,应该压缩并发送到其他地方:

shell_exec('zip a -r -tzip /var/www/vhosts/website/zip/save/testzip.zip /var/www/vhosts/website/test/testzip');

这应创建testzip.zip。不知怎的,这不起作用。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

这些不是zip的选项。你想用-tzip要求什么?开头的a会创建a.zip。如果您的意思是-a,则zip没有-a选项。唯一有意义的选项是-r,可以递归到子目录中。

在尝试使用shell_exec()之前,首先直接在shell中运行命令并解决您获得的错误。

答案 1 :(得分:0)

尝试

"zip -a -r ..."

而不是

"zip a -r ..."

---编辑---

阅读Mark Adler的评论,我意识到您正在使用带有7-zip参数的zip

所以......您确定zip是指向7z的链接吗?

无论如何,我建议你避免含糊不清:你的意图是使用7z,用

明确表示
"7z a -r -tzip ..."

如果您想调用zip可执行文件,请使用正确的zip语法。

p.s:抱歉我的英语不好