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 相关文章推荐
PHP中一个控制字符串输出的函数
Oct 09 PHP
解析php dirname()与__FILE__常量的应用
Jun 24 PHP
解析PHPExcel使用的常用说明以及把PHPExcel整合进CI框架的介绍
Jun 24 PHP
PHP-Java-Bridge使用笔记
Sep 22 PHP
Drupal简体中文语言包安装教程
Sep 27 PHP
laravel安装zend opcache加速器教程
Mar 02 PHP
php+mysql实现简单的增删改查功能
Jul 13 PHP
php curl模拟post请求和提交多维数组的示例代码
Nov 19 PHP
学习php设计模式 php实现模板方法模式
Dec 08 PHP
Symfony2中被遗弃的getRequest()方法分析
Mar 17 PHP
PHP图像处理技术实例总结【绘图、水印、验证码、图像压缩】
Dec 08 PHP
Yii2框架中一些折磨人的坑
Dec 15 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实现更新中间关联表数据的两种方法
2014/09/01 PHP
WordPress中注册菜单与调用菜单的方法详解
2015/12/18 PHP
PHP7原生MySQL数据库操作实现代码
2020/07/03 PHP
纯js实现背景图片切换效果代码
2010/11/14 Javascript
Dom 结点创建 基础知识
2011/10/01 Javascript
33个优秀的 jQuery 图片展示插件分享
2012/03/14 Javascript
JS通过相同的name进行表格求和代码
2013/08/18 Javascript
高性能JavaScript模板引擎实现原理详解
2015/02/05 Javascript
JQuery实现动态操作表格
2017/01/11 Javascript
JavaScript 事件流、事件处理程序及事件对象总结
2017/04/01 Javascript
AngularJS $http模块POST请求实现
2017/04/08 Javascript
jquery.validate表单验证插件使用详解
2017/06/21 jQuery
详解VUE2.X过滤器的使用方法
2018/01/11 Javascript
TypeScript基础入门教程之三重斜线指令详解
2018/10/22 Javascript
Vue组件教程之Toast(Vue.extend 方式)详解
2019/01/27 Javascript
微信小程序网络请求实现过程解析
2019/11/06 Javascript
JS组件库AlloyTouch实现图片轮播过程解析
2020/05/29 Javascript
JS代码简洁方式之函数方法详解
2020/07/28 Javascript
Python实现类似jQuery使用中的链式调用的示例
2016/06/16 Python
Python 最大概率法进行汉语切分的方法
2018/12/14 Python
Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例
2019/02/21 Python
python+pyqt5编写md5生成器
2019/03/18 Python
python Elasticsearch索引建立和数据的上传详解
2019/08/04 Python
解决tensorflow训练时内存持续增加并占满的问题
2020/01/19 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
2020/02/12 Python
日本7net购物网:书籍、漫画、杂志、DVD、游戏邮购
2017/02/17 全球购物
联想印度官方网上商店:Lenovo India
2019/08/24 全球购物
加拿大在线隐形眼镜和眼镜店:VisionPros
2019/10/06 全球购物
Viking Direct爱尔兰:办公用品和家具
2019/11/21 全球购物
会计专业的自荐信
2013/12/12 职场文书
自荐信需注意事项
2014/01/25 职场文书
大学生水果店创业计划书
2014/01/28 职场文书
重阳节演讲稿:尊敬帮助老人 弘扬传统美德
2014/09/25 职场文书
python关于集合的知识案例详解
2021/05/30 Python
Oracle以逗号分隔的字符串拆分为多行数据实例详解
2021/07/16 Oracle
JavaScript选择器函数querySelector和querySelectorAll
2021/11/27 Javascript