php读取多级目录结构,目录结构 · AAPHP开发手册 · 看云
时间: 2023-12-10 20:04:33 浏览: 33
好的,让我来回答你的问题。
要读取多级目录结构,可以使用 PHP 的递归函数。递归函数可以让我们在函数内部反复调用自身,从而处理多级目录结构。
以下是一个简单的 PHP 递归函数,用于读取多级目录结构:
```php
function readDirectory($dir) {
$files = array();
if(is_dir($dir)) {
if($handle = opendir($dir)) {
while(($file = readdir($handle)) !== false) {
if($file != "." && $file != "..") {
if(is_dir($dir."/".$file)) {
$files[$file] = readDirectory($dir."/".$file);
} else {
$files[] = $file;
}
}
}
closedir($handle);
return $files;
}
}
}
```
这个函数接收一个目录路径作为参数,返回一个包含多级目录结构的数组。
在函数内部,我们首先检查传入的路径是否是一个目录。如果是,我们就打开目录句柄,并使用 readdir() 函数读取目录中的文件和子目录。
接下来,我们遍历目录中的每一个文件和子目录。如果是一个子目录,我们递归调用 readDirectory() 函数,再次处理该目录的内容。如果是一个文件,我们将其添加到 $files 数组中。
最后,我们关闭目录句柄并返回 $files 数组。
希望这个递归函数对你有所帮助。如果你还有其他问题,请随时提出。