设为首页收藏本站

全球主机交流论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: discuz
查看: 1051|回复: 0
打印 上一主题 下一主题

用PHP递归循环每一个目录

[复制链接]
  • TA的每日心情
    奋斗
    2016-9-4 22:05
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    跳转到指定楼层
    楼主
    发表于 2014-9-16 18:22:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    很多时候我们要遍历一个文件夹里面的所有目录,列出里面所有的文件,PHP本身自带的有一个readdir的函数,不过只能读取当前的目录,根据这个函数,我写了另外一个函数,用来实现我的需求。函数的原理很简单,主要就是用了一下递归调用。
    function file_list($path){
       
    if ($handle = opendir($path)) {
            
    while (false !== ($file = readdir($handle))) {
                
    if ($file != "." && $file != "..") {
                   
    if (is_dir($path."/".$file)) {
                        
    echo $path.": ".$file."<br>";//去掉此行显示的是所有的非目录文件
                        
    file_list($path."/".$file);
                   
    } else {
                        
    echo $path.": ".$file."<br>";
                   
    }
                
    }
            
    }
       
    }
    }

    这个函数还可以继续做一些改进,加入一些文件夹或文件的图标什么的,这样就可以做成更强大的一个函数了,有兴趣的朋友可以扩展的一下。

    来源:yoyo blog



    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|小黑屋|Archiver|手机版|中国U网    

    GMT+8, 2024-5-4 06:38 , Processed in 0.068944 second(s), 21 queries .

    Powered by Discuz! X3.2

    © 2001-2013 Comsenz Inc.

    快速回复 返回顶部 返回列表