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将网址字符串转换成超链接(网址或email)
May 25 PHP
使用array mutisort 实现按某字段对数据排序
Jun 18 PHP
php缩小png图片不损失透明色的解决方法
Dec 25 PHP
PHP中使用gettext解决国际化问题的例子(i18n)
Jun 13 PHP
php隐藏IP地址后两位显示为星号的方法
Nov 21 PHP
PHP 5.3和PHP 5.4出现FastCGI Error解决方法
Feb 12 PHP
php中将一个对象保存到Session中的方法
Mar 13 PHP
PHP通过反射动态加载第三方类和获得类源码的实例
Nov 27 PHP
浅谈关于PHP解决图片无损压缩的问题
Sep 01 PHP
PHP设计模式之委托模式定义与用法简单示例
Aug 13 PHP
Ajax+PHP实现的删除数据功能示例
Feb 12 PHP
PHP接入微信H5支付的方法示例
Oct 28 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缓存技术的使用说明
2011/08/06 PHP
九个你必须知道而且又很好用的php函数和特点
2013/08/08 PHP
php中print(),print_r(),echo()的区别详解
2014/12/01 PHP
PHP数字前补0的自带函数sprintf 和number_format的用法(详解)
2017/02/06 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
2018/06/14 PHP
jquery 延迟执行实例介绍
2013/08/20 Javascript
下拉列表选择项的选中在不同浏览器中的兼容性问题探讨
2013/09/18 Javascript
Firefox和IE兼容性问题及解决方法总结
2013/10/08 Javascript
js倒计时小程序
2013/11/05 Javascript
jquery隔行换色效果实现方法
2015/01/15 Javascript
JSP基于Bootstrap分页显示实例解析
2016/06/12 Javascript
JS 数字转换为大写金额的简单实例
2016/08/04 Javascript
JQuery Ajax WebService传递参数的简单实例
2016/11/02 Javascript
AngularJS路由Ui-router模块用法示例
2017/05/29 Javascript
jQuery实现动态控制页面元素的方法分析
2017/12/20 jQuery
JS实现选项卡效果的代码实例
2019/05/20 Javascript
vue cli3 配置proxy代理无效的解决
2019/10/30 Javascript
[48:12]Secret vs Optic Supermajor 胜者组 BO3 第三场 6.4
2018/06/05 DOTA
python3序列化与反序列化用法实例
2015/05/26 Python
Python模拟脉冲星伪信号频率实例代码
2018/01/03 Python
flask中主动抛出异常及统一异常处理代码示例
2018/01/18 Python
Django自定义manage命令实例代码
2018/02/11 Python
Python使用pickle模块报错EOFError Ran out of input的解决方法
2018/08/16 Python
python实现连续图文识别
2018/12/18 Python
与Django结合利用模型对上传图片预测的实例详解
2019/08/07 Python
python 队列基本定义与使用方法【初始化、赋值、判断等】
2019/10/24 Python
pytho matplotlib工具栏源码探析一之禁用工具栏、默认工具栏和工具栏管理器三种模式的差异
2021/02/25 Python
前端隐藏出边界内容的实现方法
2016/04/14 HTML / CSS
美国Rue La La闪购网站:奢侈品、中高档品牌限时折扣
2016/10/19 全球购物
英国标志性生活方式品牌:Skinnydip London
2019/12/15 全球购物
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
linux面试题参考答案(8)
2016/04/19 面试题
2014年驻村干部工作总结
2014/11/17 职场文书
毕业设计论文评语
2014/12/31 职场文书
建筑工程材料员岗位职责
2015/04/11 职场文书
mysql sum(if())和count(if())的用法说明
2022/01/18 MySQL