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

php递归获取目录内文件(包含子目录)封装类分享

发布:smiling 来源: PHP粉丝网  添加日期:2020-08-11 11:09:41 浏览: 评论:0 

php递归获取目录内文件封装类分享,可以递归子目录,代码如下:

  1. function readFileFromDir($dir) { 
  2.     if (!is_dir($dir)) { 
  3.         return false; 
  4.     } 
  5.     //打开目录 
  6.     $handle = opendir($dir); 
  7.     while (($file = readdir($handle)) !== false) { 
  8.         //排除掉当前目录和上一个目录 
  9.         if ($file == "." || $file == "..") { 
  10.             continue
  11.         } //phpfensi.com 
  12.         $file = $dir . DIRECTORY_SEPARATOR . $file
  13.         //如果是文件就打印出来,否则递归调用 
  14.         if (is_file($file)) { 
  15.             print $file . '<br />'
  16.         } elseif (is_dir($file)) { 
  17.             readFileFromDir($file); 
  18.         } 
  19.     } 

调用方式:

  1. $dir = '/home/www/test';  
  2. readFileFromDir($dir); 

查看php手册的话,还有一个方法scandir也可以使用,不过这个方法会一次性获取单级目录下的所有文件,存放到数组里,如果目录里的文件比较多的话,会卡。

Tags: php递归获取目录

分享到: