【发布时间】:2010-10-25 22:55:27
【问题描述】:
我正在编写一个脚本,用于将 zip 存档中的文件提取到脚本所在的目录中。
这是我的代码:
$zip = new ZipArchive;
if ($zip->open('latest.zip') === TRUE) {
$zip->extractTo('.');
$zip->close();
unlink('installer.php');
echo 'it works!';
} else {
echo 'failed';
}
这很好用,但有一个问题。拉链包含一个额外的层。 (zip/directory/files) 像这个目录/文件一样提取,而不仅仅是文件。
有没有办法去掉这个多余的层?
感谢您的帮助!
乔尔·德雷珀
【问题讨论】:
-
在允许用户上传您随后解压缩的 zip 文件时要小心。你变得容易受到拉链炸弹的攻击:en.wikipedia.org/wiki/Zip_bomb
标签: php directory zip extract archive