目录遍历和计算文件个数的简单函数

浏览:1777 最后更新:2014-07-29 22:37 分类:函数
 有兴趣一起分享交流学习的PHP爱好者,加Q:979137
【Q群:12349137】欢迎 LAMP 艺术家加入!
在讨论区,看到一哥们寻求计算指定目录的所有文件个数,然后就写了个函数,顺便发来分享下。/**
 * @path 路径,支持相对和绝对
 * @absolute 返回的文件数组,是否包含完整路径
 */
function get_files($path, $absolute=1) {
    $files = array();
    $_path = realpath($path);
    if (!file_exists($_path)) return false;
    if (is_dir($_path)) {
        $list = scandir($_path);
        foreach ($list as $v) {
            if ($v == '.' || $v == '..') continue;
            $_paths = $_path.'/'.$v;
            if (is_dir($_paths)) {
                //递归
                $files = array_merge($files, get_files($_paths,$absolute));
            } else {
                $files[] = $absolute>0 ? $_paths : $v;
            }
        }
    } else {
        if (!is_file($_path)) return false;
        $files[] = $_path;
    }
    return $files;
}

$a = get_files('./Caige/api');
$b = get_files('./Caige/api',0);
echo '<pre>';
var_dump($a);
var_dump($b);
echo count($a).'<br />'.count($b);
评论( 相关
后面还有条评论,点击查看>>