当前位置:首页 > PHP教程 > php文件操作 > 列表

php获取文件夹中文件的两种方法

发布:smiling 来源: PHP粉丝网  添加日期:2022-06-05 09:22:58 浏览: 评论:0 

php获取文件夹中文件的两种方法:

传统方法:

在读取某个文件夹下的内容的时候

使用 opendir readdir结合while循环过滤 当前文件夹和父文件夹来操作的

  1. function readFolderFiles($path) 
  2.  
  3. { 
  4.  
  5.     $list     = []; 
  6.  
  7.     $resource = opendir($path); 
  8.  
  9.     while ($file = readdir($resource)) 
  10.  
  11.     { 
  12.  
  13.         //排除根目录 
  14.  
  15.         if ($file != ".." && $file != ".") 
  16.  
  17.         { 
  18.  
  19.             if (is_dir($path . "/" . $file)) 
  20.  
  21.             { 
  22.  
  23.                 //子文件夹,进行递归 
  24.  
  25.                 $list[$file] = readFolderFiles($path . "/" . $file); 
  26.  
  27.             } 
  28.  
  29.             else 
  30.  
  31.             { 
  32.  
  33.                 //根目录下的文件 
  34.  
  35.                 $list[] = $file; 
  36.  
  37.             } 
  38.  
  39.         } 
  40.  
  41.     } 
  42.  
  43.     closedir($resource); 
  44.  
  45.     return $list ? $list : []; 
  46.  
  47. } 

方法二

使用 scandir函数 可以扫描文件夹下内容 代替while循环读取

  1. function scandirFolder($path) 
  2.  
  3. { 
  4.  
  5.     $list     = []; 
  6.  
  7.     $temp_list = scandir($path); 
  8.  
  9.     foreach ($temp_list as $file) 
  10.  
  11.     { 
  12.  
  13.         //排除根目录 
  14.  
  15.         if ($file != ".." && $file != ".") 
  16.  
  17.         { 
  18.  
  19.             if (is_dir($path . "/" . $file)) 
  20.  
  21.             { 
  22.  
  23.                 //子文件夹,进行递归 
  24.  
  25.                 $list[$file] = scandirFolder($path . "/" . $file); 
  26.  
  27.             } 
  28.  
  29.             else 
  30.  
  31.             { 
  32.  
  33.                 //根目录下的文件 
  34.  
  35.                 $list[] = $file; 
  36.  
  37.             } 
  38.  
  39.         } 
  40.  
  41.     } 
  42.  
  43.     return $list; 
  44.  
  45. }

Tags: php获取文件夹

分享到:

相关文章