我试图显示特定目录中的所有文件夹。基本上所以每次添加新文件夹时,它都会自动显示在列表中。这是我到目前为止所拥有的。我已将其与其他帖子拼凑在一起,似乎没有起作用,也不确定原因。我得到了一个关于权限的讨厌错误,没有找到。
$dir = '/s/';
$result = array();
if (is_dir($dir)) {
$iterator = new RecursiveDirectoryIterator($dir);
foreach (new RecursiveIteratorIterator($iterator, RecursiveIteratorIterator::CHILD_FIRST) as $file) {
if (!$file->isFile()) {
$result[] = 'path: ' . $file->getPath(). ', filename: ' . $file->getFilename();
}
}
}
print_r($result);
答案 0 :(得分:0)
您可以使用该自制代码:
function collect_files($dir)
{
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
$dir = $dir.'/';
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=='file'){
$path = strchr($dir,'/');
echo "$file - $path<br>\n";
}
}
rewinddir($dh);
while (($file = readdir($dh)) !== false) {
if(filetype($dir . $file)=='dir')
if($file!='.'&&$file!='..'){
collect_files($dir.$file);
}
}
closedir($dh);
}
}
}
collect_files('.');