zoukankan      html  css  js  c++  java
  • 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

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

     

  • 相关阅读:
    MVC设置默认页面
    MySQL_DBA整理
    解决git提交敏感信息(回退git版本库到某一个commit)
    并发数计算
    高并发下的 Nginx 优化与负载均衡
    PassengerNginxdebian快速部署Rails
    Linux+postfix+extmail+dovecot打造基于web页面的邮件系统
    2018.11.30软件更新公告
    2018.10.11软件更新公告
    2018.09.25软件更新公告
  • 原文地址:https://www.cnblogs.com/cuiyuanxin/p/10453256.html
Copyright © 2011-2022 走看看