PHP解析目录和子目录以获取文件路径和仅jpg图像类型的名称

我正在寻找修改此php代码,以在单个已知目录中进行递归“搜索并显示图像”,该目录中包含未知数量的子目录.

这是我扫描单个目录并将文件回显到html的代码:

<?php 
    foreach(glob('./img/*.jpg') as $filename)
    {
        echo '<img src="'.$filename.'"><br>';
    }
?>

假设基本目录$base_dir =“ ./ img /”;包含子目录,其子目录的数量和层数未知,这些子目录仅包含.jpg文件类型.

基本上需要建立一个包含所有子目录路径的数组.

解决方法:

前一段时间,我编写了此函数来遍历目录层次结构.它将返回给定文件夹中包含的所有文件路径(但不返回文件夹路径).您应该可以轻松地对其进行修改,以仅返回名称以.jpg结尾的文件.

function traverse_hierarchy($path)
{
    $return_array = array();
    $dir = opendir($path);
    while(($file = readdir($dir)) !== false)
    {
        if($file[0] == '.') continue;
        $fullpath = $path . '/' . $file;
        if(is_dir($fullpath))
            $return_array = array_merge($return_array, traverse_hierarchy($fullpath));
        else // your if goes here: if(substr($file, -3) == "jpg") or something like that
            $return_array[] = $fullpath;
    }
    return $return_array;
}
上一篇:PHP:以五个为一组显示来自数据库的条目?


下一篇:C/C++编程笔记:C语言实现连连看游戏,小白练手项目(源码分享)