php列出目录中所有子目录的实现代码

发布时间:2020-10-31编辑:脚本学堂
本文分享一例php代码,取出指定目录中的所有子目录,学习下is_dir、opendir、array_merge等函数的用法,有需要的朋友作个参考。

php写的自定义函数,列出目录中的所有子目录:
 

复制代码 代码示例:

<?php
/**
* 取出指定目录的所有子目录
* edit: www.jb200.com
* 2013/10/9
*/
function listdir($dir){
    if ($handle = opendir($dir)){
        $output = array();
        while (false !== ($item = readdir($handle))){
            if (is_dir($dir.'/'.$item) and $item != "." and $item != ".."){
                $output[] = $dir.'/'.$item;
                $output = array_merge($output, ListDescendantDirectories($dir.'/'.$item));
            }
        }
        closedir($handle);
        return $output;
    }else{
        return false;
    }
}

//调用,取目录中的所有子目录,循环遍历。
$dirs = listdir('myDirectory');
foreach($dirs as $dir){
    echo $dir.'<br>';
}
?>