当使用系统压缩目录时,会显示大量输出
我正在尝试编写一个脚本,允许照片上传系统的管理员立即下载所有照片。 目前我正在使用
system('zip -r '.$_SERVER['DOCUMENT_ROOT'].'/zip.zip '.$_SERVER['DOCUMENT_ROOT'].'/images/photo-uploads';
压缩文件,但这似乎将所有文件的名称和位置回显到页面上。 有办法解决这个问题吗?如果不是,在服务器上压缩文件的最佳方法是什么。
I'm trying to write a script that allows an admin of a photo uploading system download all their photos at once.
Currently I am using
system('zip -r '.$_SERVER['DOCUMENT_ROOT'].'/zip.zip '.$_SERVER['DOCUMENT_ROOT'].'/images/photo-uploads';
to zip the files but this seems to echo names and locations all the files onto the page.
Is there anyway to get around this? If not what is the best way to zip files on server.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以使用
exec('zip -r '.$_SERVER['DOCUMENT_ROOT'].'/zip.zip '.$_SERVER['DOCUMENT_ROOT'].'/images/photo-uploads');
相反。You might use
exec('zip -r '.$_SERVER['DOCUMENT_ROOT'].'/zip.zip '.$_SERVER['DOCUMENT_ROOT'].'/images/photo-uploads');
instead.您可以使用 ZipArchive 扩展来代替(如果允许的话)调用系统zip 像这样,因为它使你的代码不可移植。
You can use ZipArchive extension instead (if you are allowed to) of calling system zip like that, because it makes your code non-portable.
您还可以使用输出缓冲:
这将阻止系统命令显示任何输出。
You can also use output buffering:
This will stop any output from being shown from the system command.