php遍历文件夹和文件列表的解决办法
内容摘要
这篇文章主要为大家详细介绍了php遍历文件夹和文件列表的简单示例,具有一定的参考价值,可以用来参考一下。
文章正文
这篇文章主要为大家详细介绍了php遍历文件夹和文件列表的简单示例,具有一定的参考价值,可以用来参考一下。
感兴趣的小伙伴,下面一起跟随php教程的小玲来看看吧!
为PHP遍历目录和文件列表写了一个简单的类,并附上使用实例,大家参考使用吧
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | <code><?php /* php教程 www.512Pic.com */ define( 'DS' , DIRECTORY_SEPARATOR); class getDirFile{ //返回数组 private $DirArray = array (); private $FileArray = array (); private $DirFileArray = array (); private $Handle , $Dir , $File ; //获取目录列表 public function getDir( & $Dir ){ if ( is_dir ( $Dir ) ){ if ( false != ( $Handle = opendir( $Dir )) ){ while ( false != ( $File = readdir( $Handle )) ){ if ( $File != '.' && $File != '..' && ! strpos ( $File , '.' ) ){ $DirArray [] = $File ; } } closedir ( $Handle ); } } else { $DirArray [] = '[Path]:\'' . $Dir . '\' is not a dir or not found!' ; } return $DirArray ; } //获取文件列表 public function getFile( & $Dir ){ if ( is_dir ( $Dir ) ){ if ( false != ( $Handle = opendir( $Dir )) ) { while ( false != ( $File = readdir( $Handle )) ){ if ( $File != '.' && $File != '..' && strpos ( $File , '.' ) ){ $FileArray [] = $File ; } } closedir ( $Handle ); } } else { $FileArray [] = '[Path]:\'' . $Dir . '\' is not a dir or not found!' ; } return $FileArray ; } //获取目录/文件列表 public function getDirFile( & $Dir ){ if ( is_dir ( $Dir ) ){ $DirFileArray [ 'DirList' ] = $this ->getDir( $Dir ); if ( $DirFileArray ){ foreach ( $DirFileArray [ 'DirList' ] as $Handle ){ $File = $Dir .DS. $Handle ; $DirFileArray [ 'FileList' ][ $Handle ] = $this ->getFile( $File ); } } } else { $DirFileArray [] = '[Path]:\'' . $Dir . '\' is not a dir or not found!' ; } return $DirFileArray ; } } ?></code> |
实例:(相对路径或绝对路径)
1.获取目录列表
代码如下:
1 2 3 4 5 6 7 8 9 | <code><?php /* php教程 www.512Pic.com */ $Dir_dir = './example' ; $getDirFile = new getDirFile(); $getDir = $getDirFile ->getDir( $Dir_dir ); print_r( $getDir ); ?> </code> |
显示
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 | <code><?php /* php教程 www.512Pic.com */ $File_one_dir = './example/example_one' ; $File_two_dir = 'E:/Workspace/mycode/getDirFile/example/example_two' ; $getDirFile = new getDirFile(); $getFile_one = $getDirFile ->getFile( $File_one_dir ); $getFile_two = $getDirFile ->getFile( $File_two_dir ); print_r( $getFile_one ); print_r( $getFile_two ); ?></code> |
2.获取文件列表
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 | <code><?php /* php教程 www.512Pic.com */ $File_one_dir = './example/example_one' ; $File_two_dir = 'E:/Workspace/mycode/getDirFile/example/example_two' ; $getDirFile = new getDirFile(); $getFile_one = $getDirFile ->getFile( $File_one_dir ); $getFile_two = $getDirFile ->getFile( $File_two_dir ); print_r( $getFile_one ); print_r( $getFile_two ); ?></code> |
显示
代码如下:
1 2 3 4 5 6 7 8 9 | <code>Array ( [0] => example.sql [1] => example.txt ) Array ( [0] => example.php )</code> |
3.获取目录/文件列表
代码如下:
1 2 3 4 5 6 7 8 9 | <code><?php /* php教程 www.512Pic.com */ $Dir_dir = './example' ; $getDirFile = new getDirFile(); $getDirFile = $getDirFile ->getDirFile( $Dir_dir ); print_r( $getDirFile ); ?></code> |
显示
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | <code>Array ( [DirList] => Array ( [0] => example_one [1] => example_two ) [FileList] => Array ( [example_one] => Array ( [0] => example.sql [1] => example.txt ) [example_two] => Array ( [0] => example.php ) ) )</code> |
注:关于php遍历文件夹和文件列表的简单示例的内容就先介绍到这里,更多相关文章的可以留意
代码注释