1

我在压缩目录时遇到了一些问题。以下行可以解决问题,但它还包括根目录。

exec('zip -r '.$tmp_zip.' '.$filename_no_ext.'/rss-ticker/*'); 

所以我只想压缩目录 rss-ticker 中的所有内容如何解决这个问题?

谢谢你的帮助

4

2 回答 2

1

你用的是什么压缩程序?tar以你想要的方式工作,然后你就可以gzip了。

或者,chdir()到您要压缩的目录,并将路径指定为*- 这应该只获取当前工作目录中的文件。

如果你不能让它以你想要的方式工作(或者即使你可以)尝试ZIP 扩展这个 3rd 方库- 用纯 PHP 来做会让你的代码更便携。

于 2011-10-21T15:06:02.357 回答
0

除非你有压倒性的理由不这样做(比如希望给自己带来很多痛苦和头痛),否则你真的应该使用ZipArchive工具包。在这个问题上有一个例子。

至于让 zip 使用exec,我注意到两点:

  1. 你肯定需要$filename_no_ext那里的变量。如果你只是拥有它是一个.. 现在,因为您从 开始rss-ticker/所以假设该文件夹位于文件系统的根目录。我不认为你想要那个。
  2. 您不需要尾随*即可使命令行zip功能正常工作。
于 2011-10-21T15:08:59.963 回答