php递归获取目录内文件(包含子目录)封装类分享


Posted in PHP onDecember 25, 2013

代码如下:

function readFileFromDir($dir) {
    if (!is_dir($dir)) {
        return false;
    }
    //打开目录
    $handle = opendir($dir);
    while (($file = readdir($handle)) !== false) {
        //排除掉当前目录和上一个目录
        if ($file == "." || $file == "..") {
            continue;
        }
        $file = $dir . DIRECTORY_SEPARATOR . $file;
        //如果是文件就打印出来,否则递归调用
        if (is_file($file)) {
            print $file . '<br />';
        } elseif (is_dir($file)) {
            readFileFromDir($file);
        }
    }
}

调用方式:

$dir = '/home/www/test'; 
readFileFromDir($dir);

查看php手册的话,还有一个方法scandir也可以使用,不过这个方法会一次性获取单级目录下的所有文件,存放到数组里,如果目录里的文件比较多的话,会卡。

PHP 相关文章推荐
模仿OSO的论坛(二)
Oct 09 PHP
解析php做推送服务端实现ios消息推送
Jul 01 PHP
PHP5中GD库生成图形验证码(有汉字)
Jul 28 PHP
使用php检测用户当前使用的浏览器是否为IE浏览器
Dec 03 PHP
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
Jan 03 PHP
ThinkPHP3.1数据CURD操作快速入门
Jun 19 PHP
thinkphp常见路径用法分析
Dec 02 PHP
ThinkPHP2.x防范XSS跨站攻击的方法
Sep 25 PHP
PHP开发中AJAX技术的简单应用
Dec 11 PHP
Zend Framework基于Command命令行建立ZF项目的方法
Feb 18 PHP
PHP7如何开启Opcode打造强悍性能详解
May 11 PHP
phpstudy隐藏index.php的方法
Sep 21 PHP
输入值/表单提交参数过滤有效防止sql注入的方法
Dec 25 #PHP
zend framework文件上传功能实例代码
Dec 25 #PHP
php文字水印和php图片水印实现代码(二种加水印方法)
Dec 25 #PHP
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
Dec 25 #PHP
php生成缩略图填充白边(等比缩略图方案)
Dec 25 #PHP
php使用filter过滤器验证邮箱 ipv6地址 url验证
Dec 25 #PHP
php使用strtotime和date函数判断日期是否有效代码分享
Dec 25 #PHP
You might like
NO3第三帝国留言簿制作过程
2006/10/09 PHP
PHP上传图片进行等比缩放可增加水印功能
2014/01/13 PHP
Javascript 复制数组实现代码
2009/11/26 Javascript
JS 图片缩放效果代码
2010/06/09 Javascript
js 模拟气泡屏保效果代码
2010/07/10 Javascript
自动刷新网页,自动刷新当前页面,JS调用
2013/06/24 Javascript
javascript运动详解
2015/07/06 Javascript
javascript轻量级库createjs使用Easel实现拖拽效果
2016/02/19 Javascript
微信js-sdk界面操作接口用法示例
2016/10/12 Javascript
JS如何获取地址栏的参数实例讲解
2018/10/06 Javascript
JS与SQL方式随机生成高强度密码示例
2018/12/29 Javascript
JavaScript创建表格的方法
2020/04/13 Javascript
JavaScript事件循环及宏任务微任务原理解析
2020/09/02 Javascript
使用Python获取CPU、内存和硬盘等windowns系统信息的2个例子
2014/04/15 Python
Python警察与小偷的实现之一客户端与服务端通信实例
2014/10/09 Python
给Python入门者的一些编程建议
2015/06/15 Python
python利用smtplib实现QQ邮箱发送邮件
2020/05/20 Python
完美解决Python 2.7不能正常使用pip install的问题
2018/06/12 Python
Flask框架通过Flask_login实现用户登录功能示例
2018/07/17 Python
Python实现的列表排序、反转操作示例
2019/03/13 Python
Python常用特殊方法实例总结
2019/03/22 Python
Python3监控疫情的完整代码
2020/02/20 Python
PHP基于phpqrcode类库生成二维码过程解析
2020/05/28 Python
python工具——Mimesis的简单使用教程
2021/01/16 Python
AP澳洲中文网:澳洲正品直邮,包税收件无忧
2019/07/12 全球购物
EM Cosmetics官网:由彩妆大神Michelle Phan创办的独立品牌
2020/04/27 全球购物
在求职信中如何凸显个人优势
2013/10/30 职场文书
远程教育心得体会
2014/01/03 职场文书
护理学专业求职信
2014/06/29 职场文书
俄语专业毕业生求职信
2014/07/12 职场文书
文明班级申报材料
2014/12/24 职场文书
食品安全责任书范本
2015/05/09 职场文书
2016入党积极分子考察评语
2015/12/01 职场文书
关于艺术节的开幕致辞
2016/03/04 职场文书
自制短波长线天线频率预选器 - 成功消除B2K之流的镜像
2021/04/22 无线电
JAVA springCloud项目搭建流程
2022/05/11 Java/Android