php使用递归计算文件夹大小


Posted in PHP onDecember 24, 2014

方法很简单,这里就不多废话了,直接奉上代码:

protected function dir_size($dir){

        $dh = opendir($dir);             //打开目录,返回一个目录流

        $size = 0;      //初始大小为0 

        while(false !== ($file = @readdir($dh))){     //循环读取目录下的文件

           if($file!='.' and $file!='..'){

            $path = $dir.'/'.$file;     //设置目录,用于含有子目录的情况

                if(is_dir($path)){

                $size += $this->dir_size($path);  //递归调用,计算目录大小

                }elseif(is_file($path)){

                    $size += filesize($path);   //计算文件大小

                }

            } 

        }   

        closedir($dh);             //关闭目录流

        return $size;               //返回大小

    }
PHP 相关文章推荐
PHP MYSQL乱码问题,使用SET NAMES utf8校正
Nov 30 PHP
php数组函数序列之array_splice() - 在数组任意位置插入元素
Nov 07 PHP
PHP运行模式的深入理解
Jun 03 PHP
php ci框架验证码实例分析
Jun 26 PHP
php使用json_encode对变量json编码
Apr 07 PHP
destoon安装出现Internal Server Error的解决方法
Jun 21 PHP
学习php中的正则表达式
Aug 17 PHP
PHP Echo字符串的连接格式
Mar 07 PHP
Yii2.0表关联查询实例分析
Jul 18 PHP
PHP导出带样式的Excel示例代码
Aug 28 PHP
PHP实现的redis主从数据库状态检测功能示例
Jul 20 PHP
php xhprof使用实例详解
Apr 15 PHP
php实现无限级分类
Dec 24 #PHP
PHP_SELF,SCRIPT_NAME,REQUEST_URI区别
Dec 24 #PHP
PHP扩展模块memcached长连接使用方法分析
Dec 24 #PHP
Yii框架在页面输出执行sql语句以方便调试的实现方法
Dec 24 #PHP
php使用pdo连接并查询sql数据库的方法
Dec 24 #PHP
php将access数据库转换到mysql数据库的方法
Dec 24 #PHP
php启用sphinx全文搜索的实现方法
Dec 24 #PHP
You might like
php中使用exec,system等函数调用系统命令的方法(不建议使用,可导致安全问题)
2012/09/07 PHP
实例介绍PHP的Reflection反射机制
2014/08/05 PHP
提高php编程效率技巧
2015/08/13 PHP
浅析Yii2中GridView常见操作
2016/04/22 PHP
thinkphp 抓取网站的内容并且保存到本地的实例详解
2017/08/25 PHP
javascript一点特殊用法
2008/05/28 Javascript
Extjs列表详细信息窗口新建后自动加载解决方法
2010/04/02 Javascript
asp.net+jquery滚动滚动条加载数据的下拉控件
2010/06/25 Javascript
JavaScript中json使用自己总结
2013/08/13 Javascript
js动态删除div元素基本思路及实现代码
2014/05/08 Javascript
JavaScript三元运算符的多种使用技巧
2015/04/16 Javascript
Js的Array数组对象详解
2016/02/22 Javascript
Bootstrap CSS组件之按钮下拉菜单
2016/12/17 Javascript
TypeScript入门-接口
2017/03/30 Javascript
vue中实现滚动加载更多的示例
2017/11/08 Javascript
利用Javascript开发一个二维周视图日历
2017/12/14 Javascript
JavaScript求一个数组中重复出现次数最多的元素及其下标位置示例
2018/07/23 Javascript
vue使用自定义指令实现拖拽
2021/01/29 Javascript
Jquery 动态添加元素并添加点击事件实现过程解析
2019/10/12 jQuery
详解js location.href和window.open的几种用法和区别
2019/12/02 Javascript
[45:59]EG vs OG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
python使用循环实现批量创建文件夹示例
2014/03/25 Python
深入浅出分析Python装饰器用法
2017/07/28 Python
浅谈Pycharm中的Python Console与Terminal
2019/01/17 Python
浅谈python标准库--functools.partial
2019/03/13 Python
Python jieba库用法及实例解析
2019/11/04 Python
python自动化测试之异常及日志操作实例分析
2019/11/09 Python
Python drop方法删除列之inplace参数实例
2020/06/27 Python
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
2016/02/10 面试题
电子商务专业学生的学习自我评价
2013/10/27 职场文书
工商管理毕业生推荐信
2013/12/24 职场文书
党员承诺书格式
2014/05/21 职场文书
领导干部廉政自律承诺书
2014/05/26 职场文书
政风行风建设整改方案
2014/10/27 职场文书
房屋租房协议书范本
2014/12/04 职场文书
社区好人好事材料
2014/12/26 职场文书