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开发GUI
Oct 09 PHP
php排序算法(冒泡排序,快速排序)
Oct 09 PHP
Apache中php.ini的设置方法
Feb 28 PHP
php出现内存位置访问无效错误问题解决方法
Aug 16 PHP
完美实现wordpress禁止文章修订和自动保存的方法
Nov 03 PHP
php获取客户端电脑屏幕参数的方法
Jan 09 PHP
PHP实现搜索地理位置及计算两点地理位置间距离的实例
Jan 08 PHP
基于PHP实现栈数据结构和括号匹配算法示例
Aug 10 PHP
PHP基于curl post实现发送url及相关中文乱码问题解决方法
Nov 25 PHP
PHP数组遍历的几种常见方式总结
Feb 15 PHP
掌握PHP垃圾回收机制详解
Mar 13 PHP
详解php中生成标准uuid(guid)的方法
Apr 28 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下一个阿拉伯数字转中文数字的函数
2007/07/16 PHP
PHP切割汉字的常用方法实例总结
2019/04/27 PHP
如何解决Jquery库及其他库之间的$命名冲突
2013/09/15 Javascript
手写的一个兼容各种浏览器的javascript getStyle函数(获取元素的样式)
2014/06/06 Javascript
js实现Select下拉框具有输入功能的方法
2015/02/06 Javascript
javascript判断css3动画结束 css3动画结束的回调函数
2015/03/10 Javascript
Backbone.js框架中Model与Collection的使用实例
2016/05/07 Javascript
javascript实现随机生成DIV背景色
2016/06/20 Javascript
微信小程序  modal弹框组件详解
2016/10/27 Javascript
JavaScript实现解析INI文件内容的方法
2016/11/17 Javascript
canvas快速绘制圆形、三角形、矩形、多边形方法介绍
2016/12/29 Javascript
使用ionic(选项卡栏tab) icon(图标) ionic上拉菜单(ActionSheet) 实现通讯录界面切换实例代码
2017/10/20 Javascript
JavaScript数据结构之双向链表和双向循环链表的实现
2017/11/28 Javascript
总结JavaScript在IE9之前版本中内存泄露问题
2018/04/28 Javascript
微信小程序实现简单跑马灯效果
2020/05/26 Javascript
小程序实现搜索框功能
2020/03/26 Javascript
JQuery获得内容和属性方法解析
2020/05/30 jQuery
vue props 一次传多个值实例
2020/07/22 Javascript
vue 路由meta 设置导航隐藏与显示功能的示例代码
2020/09/04 Javascript
Python中用memcached来减少数据库查询次数的教程
2015/04/07 Python
Python内置函数OCT详解
2016/11/09 Python
Python实现统计代码行的方法分析
2017/07/12 Python
Python实现PS滤镜特效之扇形变换效果示例
2018/01/26 Python
Python3.6日志Logging模块简单用法示例
2018/06/14 Python
使用python远程操作linux过程解析
2019/12/04 Python
Python 将json序列化后的字符串转换成字典(推荐)
2020/01/06 Python
Python如何使用OS模块调用cmd
2020/02/27 Python
HomeAway英国:全球领先的度假租赁在线市场
2020/02/03 全球购物
《童趣》教学反思
2014/02/19 职场文书
幼儿园评语大全
2014/04/17 职场文书
《桃林那间小木屋》教学反思
2014/05/01 职场文书
家长反馈意见及建议
2015/06/03 职场文书
2016年九九重阳节活动总结
2016/04/01 职场文书
2019新员工试用期转正申请书3篇
2019/08/13 职场文书
MySQL外键约束(FOREIGN KEY)案例讲解
2021/08/23 MySQL
Tomcat 与 maven 的安装与使用教程
2022/06/16 Servers