微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用PHP glob获取文件夹 – 无限级别

我有这个工作功能找到文件夹并创建一个数组.
function dua_get_files($path)
{
    foreach (glob($path . "/*",GLOB_ONLYDIR) as $filename)
    {
        $dir_paths[] = $filename;   
    }
    return $dir_paths;
}

功能只能在当前位置找到目录.我想查找子文件夹及其子目录中的目录路径等等.

数组应该是目录路径的平面列表.

输出数组应如何显示的示例

$dir_path[0] = 'path/folder1';
$dir_path[1] = 'path/folder1/child_folder1';
$dir_path[2] = 'path/folder1/child_folder2';
$dir_path[3] = 'path/folder2';
$dir_path[4] = 'path/folder2/child_folder1';
$dir_path[5] = 'path/folder2/child_folder2';
$dir_path[6] = 'path/folder2/child_folder3';
如果你想递归地处理目录,你应该看看 RecursiveDirectoryIterator.
$path = realpath('/etc');

$objects = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path),RecursiveIteratorIterator::SELF_FirsT);
foreach($objects as $name => $object){
    echo "$name\n";
}

原文地址:https://www.jb51.cc/php/131203.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐