下面是我在D6实验的代码:
$current_dir = getcwd();
$dir_name = 'test';
$dir_path = file_directory_path() . '/' . $dir_name;
$dir_path = realpath($dir_path);
chdir($dir_path);
$zip = new ZipArchive();
$zip_name = "test.zip";
if($zip->open($zip_name, ZIPARCHIVE::CREATE)!==TRUE){
echo 'error';
}
$zip->addEmptyDir('test');
$dir = opendir($dir_path);
while (($file = readdir($dir)) !== FALSE) {
$zip->addFile($file);
}
$zip->close();
chdir($current_dir);
再请教下,现在压缩文件是出来了,但是里面的文件结构不正常:
除了test目录,还有三个图片是对的,其它的东西都不太清楚是啥玩意。。。
解压后也是会报莫名其妙的问题,
不过把解压过程中出现的错误都关掉后,最后的文件还是解压成功了的:
还有一个问题就是,我的本意是想把所有文件放到一个新文件夹里再一起压缩:($zip->addEmptyDir('test');
),结果显示它们是并列关系,不知道该如何写才能让文件都在这个生成的test目录下?