一个遍历路径下所有目录和文件的PHP函数

<?php

/*
 * Return path folders and files
 * @param string $path Input path
 * @param showFolder $path is show folder
 * @param pattern $path glob function's pattern
 * @return array
 */
function fileTree($path, $showFolder = false, $pattern = '*'){
    $tree = array();
    $nodeArr = glob(realpath($path) . '/' . $pattern);
    foreach($nodeArr as $node){
        if(is_dir($node)){
            $rec = fileTree($node);
            $tree['folder'][] = $node;
            if($showFolder == true && isset($rec['folder'])) {
                $tree['folder'] = array_merge($tree['folder'], $rec['folder']);
            }
            $tree['file'] = array_merge($tree['file'], $rec['file']);
        } else{
            $tree['file'][] = $node;
        }
    }
    return $tree;
}

https://gist.github.com/GeHou/8910876

你可能感兴趣的:(一个遍历路径下所有目录和文件的PHP函数)