使用特定目录及其子目录中的路径搜索特定文件

时间:2012-04-29 06:49:19

标签: php

我必须在目录假设模块及其所有子目录(如用户,博客等)中找到live.php及其路径。如果子目录博客包含更多子目录,也要搜索。

我正在使用长代码来完成这项工作。任何其他更好更短的方法。

1 个答案:

答案 0 :(得分:2)

我认为你应该看看PHP glob http://php.net/manual/en/function.glob.php

示例:搜索dir/modulelive.php的子目录或以live.php结尾的任何内容

glob_recursive('dir/module/*live.php');

使用的功能:http://www.php.net/manual/en/function.glob.php#106595

if ( ! function_exists('glob_recursive'))
{
    function glob_recursive($pattern, $flags = 0)
    {
        $files = glob($pattern, $flags);
        foreach (glob(dirname($pattern).'/*', GLOB_ONLYDIR|GLOB_NOSORT) as $dir)
        {
            $files = array_merge($files, glob_recursive($dir.'/'.basename($pattern), $flags));
        }
        return $files;
    }
}