[英]PHP ZIP creating subfolders as files
我有一些PHP代码可用来尝试压缩文件夹。 该文件夹中有两个子文件夹以及几个单独的文件。
这是代码:-
<?php
$src = $_POST['srcin'];
$dst = $_POST['dstin'];
$zip = new ZipArchive;
$zip->open($dst, ZipArchive::CREATE);
if (false !== ($dir = opendir($src)))
{
while (false !== ($file = readdir($dir)))
{
if ($file != '.' && $file != '..')
{
$ans = DIRECTORY_SEPARATOR;
$zip->addFile($src.DIRECTORY_SEPARATOR.$file);
}
}
}
else
{
die('Can\'t read dir');
}
$zip->close();
echo json_encode('Folder Compressed');
?>
输入值为:-
srcin =“ TestFolder” dstin =“ TestFolder.zip”。
发生的事情是我正在获取一个zip文件。 但是,子文件夹被创建为文件。
在这个论坛上搜索有关如何对文件夹进行ZIP压缩后,我得到了上面的代码,但是我看不到任何有关未正确压缩子文件夹的内容。
任何帮助深表感谢。
谢谢
马丁
在向其中添加文件之前,应使用addEmptyDir
创建目录。
这是一个示例(请参阅顶部注释)如何递归归档目录
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.