PHP遍历目录下所有文件的小例子

发布时间:2020-07-09编辑:脚本学堂
本文分享一个遍历目录下所有文件的php代码,有兴趣研究php递归遍历的朋友,可以作个参考,挺不错,希望对大家有帮助。

PHP遍历目录下所有文件。
例子:
 

复制代码 代码示例:
<?php 
/*
* 递归获取指定路径下的所有文件或匹配指定正则的文件(不包括“.”和“..”),结果以数组形式返回
* @param  string  $dir
* @param  string  [$pattern]
* @return array
* @edit: www.jb200.com
*/ 
function file_list($dir,$pattern="") 

    $arr=array(); 
    $dir_handle=opendir($dir); 
    if($dir_handle) 
    { 
        // 严格比较,因为返回的文件名可能是“0” 
        while(($file=readdir($dir_handle))!==false) 
        { 
            if($file==='.' || $file==='..') 
            { 
                continue
            } 
            $tmp=realpath($dir.'/'.$file); 
            if(is_dir($tmp)) 
            { 
                $retArr=file_list($tmp,$pattern); 
                if(!empty($retArr)) 
                { 
                    $arr[]=$retArr; 
                } 
            } 
            else 
            { 
                if($pattern==="" || preg_match($pattern,$tmp)) 
                { 
                    $arr[]=$tmp; 
                } 
            } 
        } 
        closedir($dir_handle); 
    }  
    return $arr; 

 
// 列出网站根目录下所有以".php"扩展名(不区分大小写)结尾的文件 
echo '<pre>'; 
print_r(file_list($_SERVER['DOCUMENT_ROOT'],"//.php$/i")); 
echo '</pre>'; 
?>

您可能感兴趣的文章:
PHP遍历文件和文件夹的小例子
php遍历目录下所有文件和子文件夹的代码
php 目录遍历与删除的函数示例
php遍历文件夹及其下所有文件的代码
php递归遍历目录的二个函数
php遍历目录下所有文件的函数
php 目录遍历小函数
递归遍历目录下所有文件的php函数