php文件操作之递归实现目录显示

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php文件操作之递归实现目录显示相关的知识,希望对你有一定的参考价值。

<?php
function showDir($path,$lev=0){

//打开目录句柄,打开成功则返回资源,否则返回false
$fh = opendir($path);

//将资源按行取出

  while(($row = readdir($fh))!==false){

    //跳过目录为.和..,如果没有这一步,则在遍历出的目录顶部会显示.和..,即当前目录和上一级目录

    if(($row==‘.‘)||($row == ‘..‘)){
      continue;
    }

    //重复打印,用$lev来标识目录级别,是属于一级目录还是二级或者三级目录..
    echo str_repeat(‘&nbsp;&nbsp;‘,$lev),$row,‘<br>‘;

    //如果当前获取到的路径对应的文件名是一个目录,则使用递归思想继续遍历
    if((is_dir($path.‘/‘.$row))){
      showDir($path.‘/‘.$row,$lev+1);
    }
  }
  closedir($fh);
}
showDir(‘.‘);
?>

本地目录:

  技术分享

效果如下:

技术分享

 














以上是关于php文件操作之递归实现目录显示的主要内容,如果未能解决你的问题,请参考以下文章

Linux之基础命令——文件操作

简单IO流应用之文件目录拷贝

前端学PHP之文件操作

(实用篇)PHP不用递归遍历目录下所有文件的代码

php递归删除文件夹

大数据实战之最全的Linux命令