在PHP中,我可以通过创建一个zip文件:添加现有的文件夹的内容压缩PHP
$zip = new ZipArchive();
$zipname = "somename" . '.zip';
$zip->open($zipname, ZipArchive::CREATE | ZipArchive::OVERWRITE);
和文件添加到它与
$zip->addFile($pathtodir."filename.bla", "filenameinzip.bla");
或我可以添加一个空文件夹它与:
$zip->addEmptyDir("foldername");
但是,有没有办法添加一个文件夹,它已经存在,并有一个zip文件的子内容直接?
重要提示:其他线程中的解决方案仅将该文件夹中的文件直接添加到zip,而不是文件夹本身。我想保留这个结构,这意味着该文件夹也应该在zip文件中,而不仅仅是它的子内容。像:
zipname.zip/foldername/filenameinzip.bla
有关于如何做的例子,在附加功能的评论:HTTP:// PHP。 net/manual/en/ziparchive.addfile.php –
[如何使用PHP压缩整个文件夹]可能的重复(http://stackoverflow.com/questions/4914750/how-to-zip-a-whole-folder-使用-php) –
@GeraldSchneider:我已经在阅读之前写过这个问题,但是线程中的答案直接将文件添加到zip中,而没有文件夹本身。 – yangsunny