> 백엔드 개발 > PHP 튜토리얼 > PHP는 디렉토리 및 파일 목록을 반복합니다.

PHP는 디렉토리 및 파일 목록을 반복합니다.

WBOY
풀어 주다: 2016-07-25 08:43:15
원래의
1070명이 탐색했습니다.
  1. define('DS', DIRECTORY_SEPARATOR);
  2. class getDirFile{
  3. //返回数组
  4. private $DirArray = array();
  5. private $FileArray = array();
  6. private $DirFileArray = array();
  7. private $Handle,$Dir,$File;
  8. //获取目录列表
  9. public function getDir( & $Dir ){
  10. if( is_dir($Dir) ){
  11. if( false != ($Handle = opendir($Dir)) ){
  12. while( false != ($File = readdir($Handle)) ){
  13. if( $File!='.' && $File!='..' && !strpos($File,'.') ){
  14. $DirArray[] = $File;
  15. }
  16. }
  17. closedir( $Handle );
  18. }
  19. }else{
  20. $DirArray[] = '[Path]:''.$Dir.'' is not a dir or not found!';
  21. }
  22. return $DirArray;
  23. }
  24. //获取文件列表
  25. public function getFile( & $Dir ){
  26. if( is_dir($Dir) ){
  27. if( false != ($Handle = opendir($Dir)) ) {
  28. while( false != ($File = readdir($Handle)) ){
  29. if( $File!='.' && $File!='..' && strpos($File,'.') ){
  30. $FileArray[] = $File;
  31. }
  32. }
  33. closedir( $Handle );
  34. }
  35. }else{
  36. $FileArray[] = '[Path]:''.$Dir.'' is not a dir or not found!';
  37. }
  38. return $FileArray;
  39. }
  40. //获取目录/文件列表
  41. public function getDirFile( & $Dir ){
  42. if( is_dir($Dir) ){
  43. $DirFileArray['DirList'] = $this->getDir( $Dir );
  44. if( $DirFileArray ){
  45. foreach( $DirFileArray['DirList'] as $Handle ){
  46. $File = $Dir.DS.$Handle;
  47. $DirFileArray['FileList'][$Handle] = $this->getFile( $File );
  48. }
  49. }
  50. }else{
  51. $DirFileArray[] = '[Path]:''.$Dir.'' is not a dir or not found!';
  52. }
  53. return $DirFileArray;
  54. }
  55. }
  56. ?>
复制代码

实例:(相对路径或绝对路径)

1.获取目录列表
  1. $Dir_dir = './example';
  2. $getDirFile = new getDirFile();
  3. $getDir = $getDirFile->getDir( $Dir_dir );
  4. print_r($getDir);
  5. ?>
  6. 显示:
  7. [html] view plaincopy
  8. Array
  9. (
  10. [0] => example_one
  11. [1] => example_two
  12. )
复制代码

2.获取文件列表
  1. $File_one_dir = './example/example_one';
  2. $File_two_dir = 'E:/Workspace/mycode/getDirFile/example/example_two';
  3. $getDirFile = new getDirFile();
  4. $getFile_one = $getDirFile->getFile( $File_one_dir );
  5. $getFile_two = $getDirFile->getFile( $File_two_dir );
  6. print_r($getFile_one);
  7. print_r($getFile_two);
  8. ?>
复制代码

显示:
  1. Array
  2. (
  3. [0] => example.sql
  4. [1] => example.txt
  5. )
  6. Array
  7. (
  8. [0] => example.php
  9. )
复制代码

3.获取目录/文件列表
  1. $Dir_dir = './example';
  2. $getDirFile = new getDirFile();
  3. $getDirFile = $getDirFile->getDirFile( $Dir_dir );
  4. print_r($getDirFile);
  5. ?>
复制代码

显示:
  1. Array
  2. (
  3. [DirList] => Array
  4. (
  5. [0] => example_one
  6. [1] => example_two
  7. )
  8. [FileList] => Array
  9. (
  10. [example_one] => Array
  11. (
  12. [0] => example.sql
  13. [1] => example.txt
  14. )
  15. [example_two] => Array
  16. (
  17. [0] => example.php
  18. )
  19. )
  20. )
复制代码

파일 목록, PHP


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿