您的位置:首页 > 编程语言 > PHP开发

PHP实现遍历文件夹及子文件夹

2017-10-18 18:46 218 查看
有看到过一些关于无限极分类,树结构的实现方面的例子,然后想到遍历文件夹和这个很像。所以将那些思想用到这个里面来,实现遍历文件夹,显示出来的时候,看起来一层一层的,知道谁是谁里面的文件

$path="../test";

getFiles($path);

/*

$path :要遍历的目录

$k: 记录有多少个文件及文件夹,同时作为数组的下标用

$depth: 记录文件夹的深度

*/

function getFiles($path,$k=1,$depth=0){

    global $arr,$key;

    $key=$k;

    if(is_dir($path)){  //文件存在且为目录时,真  

       if($ch1=opendir($path)){

           while(($file=readdir($ch1)) !==false){//返回目录中下一个文件的文件名,失败则返回false

               if($file !="."&&$file!=".."){

                    $flag=str_repeat("|__",$depth);//将深度具体化为看得见的符号,显示出来

                    $arr[$key]=$flag.$file;

                    $key++;

                   $subpath=$path."/".$file;

                   if(is_dir($subpath)){

                       getFiles($subpath,$key,$depth+1);

                   }

                   

               }

           

           }

       }

    }

}

echo "<table>";

echo "<tr ><th width=\"100px\">编号</th><th width=\"100px\">文件名</th></tr>";

foreach($arr as $key=>$v){

    echo "<tr><td>".$key."</td><td>".$v."</td></tr>";

}

echo "</table>";
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息