php计算整个目录大小的方法


Posted in PHP onJune 01, 2015

本文实例讲述了php计算整个目录大小的方法。分享给大家供大家参考。具体实现方法如下:

/**
 * Calculate the full size of a directory
 *
 * @author   Jonas John
 * @version   0.2
 * @link    http://www.jonasjohn.de/snippets/php/dir-size.htm
 * @param    string  $DirectoryPath  Directory path
 */
function CalcDirectorySize($DirectoryPath) {
  // I reccomend using a normalize_path function here
  // to make sure $DirectoryPath contains an ending slash
  // (-> http://www.jonasjohn.de/snippets/php/normalize-path.htm)
  // To display a good looking size you can use a readable_filesize
  // function.
  // (-> http://www.jonasjohn.de/snippets/php/readable-filesize.htm)
  $Size = 0;
  $Dir = opendir($DirectoryPath);
  if (!$Dir)
    return -1;
  while (($File = readdir($Dir)) !== false) {
    // Skip file pointers
    if ($File[0] == '.') continue; 
    // Go recursive down, or add the file size
    if (is_dir($DirectoryPath . $File))      
      $Size += CalcDirectorySize($DirectoryPath . $File . DIRECTORY_SEPARATOR);
    else 
      $Size += filesize($DirectoryPath . $File);    
  }
  closedir($Dir);
  return $Size;
}
//使用范例:
$SizeInBytes = CalcDirectorySize('data/');

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
数据库相关问题
Oct 09 PHP
php 在文件指定行插入数据的代码
May 08 PHP
PHP 函数学习简单小结
Jul 08 PHP
PHP sprintf()函数用例解析
May 18 PHP
php页面缓存ob系列函数介绍
Oct 18 PHP
PHP中使用json数据格式定义字面量对象的方法
Aug 20 PHP
PHP采用get获取url汉字出现乱码的解决方法
Nov 13 PHP
PHP将HTML转换成文本的实现代码
Jan 21 PHP
PHP+HTML+JavaScript+Css实现简单爬虫开发
Mar 28 PHP
PHP使用xpath解析XML的方法详解
May 20 PHP
Yii2.0框架实现带分页的多条件搜索功能示例
Feb 20 PHP
PHP之认识(二)关于Traits的用法详解
Apr 11 PHP
php获取系统变量方法小结
May 29 #PHP
typecho插件编写教程(六):调用接口
May 28 #PHP
PHP cURL初始化和执行方法入门级代码
May 28 #PHP
php支持中文字符串分割的函数
May 28 #PHP
typecho插件编写教程(五):核心代码
May 28 #PHP
php实现paypal 授权登录
May 28 #PHP
typecho插件编写教程(四):插件挂载
May 28 #PHP
You might like
一个php作的文本留言本的例子(一)
2006/10/09 PHP
某大型网络公司应聘时的笔试题目附答案
2008/03/27 PHP
PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用
2012/05/07 PHP
浅析PHP原理之变量分离/引用(Variables Separation)
2013/08/09 PHP
php中将数组转成字符串并保存到数据库中的函数代码
2013/09/29 PHP
php中preg_replace正则替换用法分析【一次替换多个值】
2017/01/17 PHP
PHP异常处理定义与使用方法分析
2017/07/25 PHP
jquery插件之easing使用
2010/08/19 Javascript
Easy.Ajax 部分源代码 支持文件上传功能, 兼容所有主流浏览器
2011/02/24 Javascript
JS 对象属性相关(检查属性、枚举属性等)
2015/04/05 Javascript
基于jquery实现的仿优酷图片轮播特效代码
2016/01/13 Javascript
AngularJS控制器详解及示例代码
2016/08/16 Javascript
深入理解vue路由的使用
2017/03/24 Javascript
从零开始学习Node.js系列教程四:多页面实现数学运算的client端和server端示例
2017/04/13 Javascript
配置node服务器并且链接微信公众号接口配置步骤详解
2019/06/21 Javascript
[42:25]EG vs Spirit Supermajor 败者组 BO3 第二场 6.4
2018/06/05 DOTA
Python中方法链的使用方法
2016/02/23 Python
开源Web应用框架Django图文教程
2017/03/09 Python
python将txt文件读入为np.array的方法
2018/10/30 Python
python读取并写入mat文件的方法
2019/07/12 Python
python之生产者消费者模型实现详解
2019/07/27 Python
python制作一个简单的gui 数据库查询界面
2020/11/19 Python
python字典按照value排序方法
2020/12/28 Python
在PyCharm中安装PaddlePaddle的方法
2021/02/05 Python
Onzie官网:美国时尚瑜伽品牌
2019/08/21 全球购物
酒店应聘自荐信
2013/11/09 职场文书
家长给孩子的表扬信
2014/01/17 职场文书
食品厂厂长岗位职责
2014/01/30 职场文书
高中军训感言600字
2014/03/11 职场文书
大学毕业寄语大全
2014/04/10 职场文书
企业标语口号
2014/06/10 职场文书
单位婚育证明范本
2014/11/21 职场文书
2014年教研室工作总结
2014/12/06 职场文书
教你使用pyinstaller打包Python教程
2021/05/27 Python
HTML5页面音频自动播放的实现方式
2021/06/21 HTML / CSS
frg-100简单操作(设置)说明
2022/04/05 无线电