列出指定目录下所有文件及文件夹的php函数

/* 函数 listDirTree( $dirName = null )
** 功能 列出目录下所有文件及子目录
** 参数 $dirName 目录名称
** 返回 目录结构数组 false为失败
*/

/*   函数   listDirTree(   $dirName   =   null   )  
  **   功能   列出目录下所有文件及子目录  
  **   参数   $dirName   目录名称  
  **   返回   目录结构数组   false为失败  
*/  
  function   listDirTree(   $dirName   =   null   )    
  {  
      if(   empty(   $dirName   )   )  
      exit(   "IBFileSystem:   directory   is   empty."   );  

      if(   is_dir(   $dirName   )   )  
      {  
          if(   $dh   =   opendir(   $dirName   )   )  
          {  
              $tree   =   array();  
              while(   (   $file   =   readdir(   $dh   )   )   !==   false   )  
              {  
                  if(   $file   !=   "."   &&   $file   !=   ".."   )  
                  {  
                      $filePath   =   $dirName   .   "/"   .   $file;  

                      if(   is_dir(   $filePath   )   ) //为目录,递归  
                      {  
                        $tree[$file]   =   listDirTree(   $filePath   );  
                      }  
                      else //为文件,添加到当前数组  
                      {  
                        $tree[]   =   $file;  
                      }  
                  }  
              }  
              closedir(   $dh   );    
          }  
          else  
          {  
            exit(   "IBFileSystem:   can   not   open   directory   $dirName.");  
          }  

          //返回当前的$tree  
          return   $tree;  
      }  

      else  
      {  
        exit(   "IBFileSystem:   $dirName   is   not   a   directory.");  
      }  
  }

转载请注明出处:https://www.onexin.net/php-function-list-all-files-and-folders-under-the-specified-directory/

相关文章:

1、用 PHP 编写更好的正则表达式regex
https://www.onexin.net/php-regex/

2、PHP 版本 8.2,8.1,8.0,7.4
https://www.onexin.net/php-8_2-8_1-8_0-7_4/

3、PHP中的Liskov替换原则
https://www.onexin.net/php-liskov/

4、php实现自运行的do实例详解
https://www.onexin.net/php-do/

5、PHP 后端实现JWT认证方法示例
https://www.onexin.net/php-jwt/

Leave a Reply