当前位置:首页 > 叨叨念念 > PHP遍历文件

PHP遍历文件

叨叨念念 / 星之宇 / 2021-11-14 20:33 / 浏览:697 / 评论:0

1、使用scandir函数封装递归函数

php自带函数,返回当前目录下的所有文件和文件夹。注意:会有.和..分别表示当前目录和上层目录。

function file_list($path){
    $func = __FUNCTION__;
    if(!file_exists($path)) {
        return [];
    }
    $files = scandir($path);
    $fileItem = [];
    foreach($files as $v) {
        $newPath = $path .DIRECTORY_SEPARATOR . $v;
        if(is_dir($newPath) && $v != '.' && $v != '..') {
            $fileItem = array_merge($fileItem, $func($newPath));
        }else if(is_file($newPath)){
            $fileItem[] = $newPath;
        }
    }
    return $fileItem;
}


2、使用glob函数封装递归函数

php自带函数,功能和scandir类似,但比它更加强大灵活。

function file_list($path){
    $func = __FUNCTION__;
    if(!file_exists($path)) {
        return [];
    }
    $files = glob($path.DIRECTORY_SEPARATOR.'*');
    $fileItem = [];
    foreach($files as $v) {
        if(is_dir($v)) {
            $fileItem = array_merge($fileItem, $func($v));
        }else if(is_file($v)){
            $fileItem[] = $v;
        }
    }
    return $fileItem;
}

目前有 0 条评论

    • 昵称
    • 邮箱
    • 网址