PHP实现目录文件遍历

来源:互联网 发布:苹果有录屏软件吗 编辑:程序博客网 时间:2024/05/22 14:17
<?php/**递归获取指定路径下的所有文件或匹配指定正则的文件(不包括“.”和“..”),结果以数组形式返回*@paramstring$dir*@paramstring[$pattern]*@returnarray*/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>';?>

原创粉丝点击