PHP遍历文件夹下所有文件

不论是面试还是正常工作需要都会用到遍历文件夹下的所有文件,今天就记录一下笔记。废话不多说直接上代码:

 1 <?php
 2 
 3 /**
 4 * 遍历当前文件夹展示所有的文件和目录
 5 */
 6 
 7 function dirList($dir_path = '') {
 8     if(is_dir($dir_path)) {
 9         $dirs = opendir($dir_path);
10         if($dirs) {
11             while(($file = readdir($dirs)) !== false) {
12                 if($file !== '.' && $file !== '..') {
13                     if(is_dir($file)) {
14                         echo $dir_path . '/' . $file . '<br>';
15                         dirList($dir_path . '/' . $file);
16                     } else {
17                         echo $dir_path . '/' . $file . '<br>';
18                     }
19                 }
20             }
21             closedir($dirs);
22         }
23     } else {
24         echo '目录不存在!';
25     }
26 }
27 
28 dirList('/var/www/html/php-demo');
29 
30 function dir_list($dir) {
31     if(!is_dir($dir)) return false;
32     $dir_list = array();
33     $opendir = opendir($dir);
34     if($opendir) {
35         while(($file = readdir($opendir)) !== false) {
36             if($file !== '.' && $file !== '..') {
37                 $tem = $dir . '/' . $file;
38                 if(is_dir($tem)) {
39                     $dir_list[$tem . '/'] = $file . '/';
40                     dir_list($tem);
41                 } else {
42                     $dir_list[] = $file;
43                 }
44             }
45         }
46         closedir($opendir);
47         return $dir_list;
48     }
49 }
50 
51 $dir = dir_list('/var/www/html/php-demo');
52 var_dump($dir);

运行结果:

PHP遍历文件夹下所有文件

 

源代码已上传GitHub:https://github.com/cuiyuanxin/php-demo/blob/master/dir.php

纯手打笔记,如有错误请评论提出,谢谢。

 

posted @ 2019-02-28 21:24  崔元欣  阅读(3271)  评论(0编辑  收藏  举报