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 is_file 判断给定文件名是否为一个正常的文件
May 10 PHP
让Json更懂中文(JSON_UNESCAPED_UNICODE)
Oct 27 PHP
php curl常见错误:SSL错误、bool(false)
Dec 28 PHP
php实现12306余票查询、价格查询示例
Apr 17 PHP
PHP Web木马扫描器代码分享
Sep 06 PHP
php获取数据库结果集方法(推荐)
Jun 01 PHP
PHPTree――php快速生成无限级分类
Mar 30 PHP
thinkPHP框架动态配置用法实例分析
Jun 14 PHP
PHP的mysqli_stmt_init()函数讲解
Jan 24 PHP
Swoole4.4协程抢占式调度器详解
May 23 PHP
PHP使用redis位图bitMap 实现签到功能
Oct 08 PHP
PHP实现笛卡尔积算法的实例讲解
Dec 22 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
在IIS上安装PHP4.0正式版
2006/10/09 PHP
PHP中error_reporting()函数的用法(修改PHP屏蔽错误)
2011/07/01 PHP
zend framework重定向方法小结
2016/05/28 PHP
PHP实现生成推广海报的方法详解
2018/03/14 PHP
PHP设计模式之抽象工厂模式实例分析
2019/03/25 PHP
Laravel Eloquent ORM 多条件查询的例子
2019/10/10 PHP
laravel7学习之无限级分类的最新实现方法
2020/09/30 PHP
WordPress 插件——CoolCode使用方法与下载
2007/07/02 Javascript
JS+CSS制作DIV层可(最小化/拖拽/排序)功能实现代码
2013/02/25 Javascript
js实现页面转发功能示例代码
2013/08/05 Javascript
js中settimeout方法加参数的使用实例
2014/02/27 Javascript
使用Bootstrap Tabs选项卡Ajax加载数据实现
2016/12/23 Javascript
js生成随机颜色方法代码分享(三种)
2016/12/29 Javascript
Bootstrap缩略图与警告框学习使用
2017/02/08 Javascript
原生JS实现日历组件的示例代码
2017/09/22 Javascript
javascript原生封装一个淡入淡出效果的函数测试实例代码
2018/03/19 Javascript
JavaScript实现创建自定义对象的常用方式总结
2018/07/09 Javascript
vue实例中data使用return包裹的方法
2018/08/27 Javascript
vue-cli 3.x 修改dist路径的方法
2018/09/19 Javascript
[02:23]2014DOTA2国际邀请赛中国战队回顾
2014/08/01 DOTA
python list转dict示例分享
2014/01/28 Python
Python AES加密模块用法分析
2017/05/22 Python
Python机器学习k-近邻算法(K Nearest Neighbor)实例详解
2018/06/25 Python
使用Python更换外网IP的方法
2018/07/09 Python
python 遍历目录(包括子目录)下所有文件的实例
2018/07/11 Python
pygame实现飞机大战
2020/03/11 Python
python 多线程死锁问题的解决方案
2020/08/25 Python
Html5 页面适配iPhoneX(就是那么简单)
2019/09/05 HTML / CSS
科颜氏美国官网:Kiehl’s美国
2017/01/31 全球购物
美国便宜的横幅和标志印刷在线:Best of Signs
2019/05/29 全球购物
Monica Vinader官网:英国轻奢珠宝品牌
2020/02/05 全球购物
Johnson Fitness澳大利亚:高级健身器材
2021/03/16 全球购物
String这个类型的class为何定义成final?
2012/11/13 面试题
乌镇导游词
2015/02/02 职场文书
大队委员竞选演讲稿
2015/11/20 职场文书
Apache压力测试工具的安装使用
2021/03/31 Servers