我需要允许我的用户备份他的public_html文件夹,但是我想压缩除我自己的“规则文件夹”之外的所有内容。我找到了一个很好的答案here(工作得很好,但是导出的zip文件也包含我的rules文件夹)。所以问题是如何检测文件夹而忽略它?
$files = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($rootPath),
RecursiveIteratorIterator::LEAVES_ONLY
);
$exclude = array("rulles_folder");
foreach ($files as $name => $file) {
var_dump($file -> getFilename());
if ($file -> isDir() && !in_array($file -> getFilename(), $exclude)) {
salta();
} else {
// Skip directories (they would be added automatically)
if (!$file -> isDir()) {
// Get real and relative path for current file
$filePath = $file -> getRealPath();
$relativePath = substr($filePath, strlen($rootPath) + 0);
// Add current file to archive
$zip -> addFile($filePath, $relativePath);
}
}
}
function salta () {
;
}
var_dump返回
string(1) "." string(2) ".." string(9) ".DS_Store" string(9) "index.php"
以此类推,根本没有文件夹名称,所以当我打电话时
if ($file -> isDir() && !in_array($file -> getFilename(), $a_excluir))
什么都没有发生,因为不存在文件夹名称
有什么建议吗?
谢谢