您当前的位置:首页 > 计算机 > 编程开发 > PHP

PHP 递归遍历目录和子目录的所有文件

时间:12-14来源:作者:点击数:

最近写一个功能,将目录下的 md 文件批量转换为 html 文件,首先就需要将遍历目录下的所有文件,这里在网站找到一个好用的方法,使用递归遍历所有的文件:

/**
* 获取目录中所有文件的路径
* @param $dir
* @return array
*/
function getdirlist($dir){  
  if(is_dir($dir)){
    $files = array();
    $child_dirs = scandir($dir);
    foreach($child_dirs as $child_dir){
      //'.'和'..'是 Linux 系统中的当前目录和上一级目录,必须排除掉,  
      //否则会进入死循环,报 segmentation falt 错误
      if($child_dir != '.' && $child_dir != '..'){
        if(is_dir($dir.'/'.$child_dir)){
          $files[$child_dir] = getdirlist($dir.'/'.$child_dir);
        }else{
          $files[] = $child_dir;
        }
      }
    }
    return $files;
  }else{
    return $dir;
  }
}
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐