是否有任何可以解压缩常规 zip 文件的 PHP 脚本?我们的要求是我们必须在 safe_mode 上运行,并且不允许安装任何扩展来启用此功能。因此,任何功能都必须是常规的 php 脚本。
有什么想法吗?
编辑:不幸的是,发布的解决方案都不适合我们。除非切换主机,否则我们可能不会更改 safe_mode 要求,目前这不是一个选项。
pclzip.lib.php 是一个相当流行且使用良好的 php 类,它能够使用纯 php 提取 zip 文件
这里通常的答案是this或this。但是,根据PHP 文档:
PHP 4
捆绑的 PHP 4 版本需要» ZZIPlib,由 Guido Draheim,版本 0.10.6 或更高版本
PHP 5.2.0 或更高版本
这个扩展使用了Jean-loup Gailly 和 Mark Adler的» zlib的功能。
所以,两者都需要外部依赖。
您不能要求他们使用 .htaccess 指令禁用单个文件夹的安全模式,例如:
php_value safe_mode "0"
并将解压缩脚本放在那里?
如果是这样,那么类似:
$output = shell_exec('unzip /path/to/file');
会做的
看看http://www.phpclasses.org/browse/package/2495.html
它使用 gzip 扩展,但它几乎安装在每台服务器上(我希望,检查 phpinfo() )
如果您在 linux/unix 上运行,则可以运行
exec("unzip file.zip");
注意:启用安全模式后,您只能执行
safe_mode_exec_dir.