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


Posted in PHP onJune 19, 2015

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

/**
 * Calculate the full size of a directory
 *
 * @author   Jonas John
 * @version   0.2
 * @param    string  $DirectoryPath  Directory path
 */
function CalcDirectorySize($DirectoryPath) {
  // I reccomend using a normalize_path function here
  // to make sure $DirectoryPath contains an ending slash
  // To display a good looking size you can use a readable_filesize
  // function.
  $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学习 运算符与运算符优先级
Jun 15 PHP
PHP中foreach循环中使用引用要注意的地方
Jan 02 PHP
PHP生成等比缩略图类和自定义函数分享
Jun 25 PHP
PHP图片自动裁切应付不同尺寸的显示
Oct 16 PHP
PHP中字符安全过滤函数使用小结
Feb 25 PHP
PHP Web木马扫描器代码分享
Sep 06 PHP
ThinkPHP路由机制简介
Mar 23 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
Oct 17 PHP
php实现websocket实时消息推送
Mar 30 PHP
ThinkPHP5框架缓存查询操作分析
May 30 PHP
PHP实现的多维数组去重操作示例
Jul 21 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
Oct 03 PHP
php简单计算页面加载时间的方法
Jun 19 #PHP
php实现随机生成易于记忆的密码
Jun 19 #PHP
php根据一个给定范围和步进生成数组的方法
Jun 19 #PHP
php分割合并两个字符串的函数实例
Jun 19 #PHP
php计算整个mysql数据库大小的方法
Jun 19 #PHP
php判断访问IP的方法
Jun 19 #PHP
PHP自动生成表单代码分享
Jun 19 #PHP
You might like
php ftp文件上传函数(基础版)
2010/06/03 PHP
php 数组的一个悲剧?
2011/05/11 PHP
php模拟ping命令(php exec函数的使用方法)
2013/10/25 PHP
利用浏览器的Javascript控制台调试PHP程序
2014/01/08 PHP
php之curl设置超时实例
2014/11/03 PHP
为PHP5.4开启Zend OPCode缓存
2014/12/26 PHP
php基础教程
2015/08/26 PHP
PHP+MySQL实现无极限分类栏目的方法
2015/12/23 PHP
读jQuery之四(优雅的迭代)
2011/06/20 Javascript
用jquery统计子菜单的条数示例代码
2013/10/18 Javascript
JavaScript伸缩的菜单简单示例
2013/12/03 Javascript
JS根据浏览器窗口大小实时动态改变网页文字大小的方法
2016/02/25 Javascript
jQuery Ajax 上传文件处理方式介绍(推荐)
2016/06/30 Javascript
Jquery表单验证失败后不提交的解决方法
2016/10/18 Javascript
AngularJS实现根据变量改变动态加载模板的方法
2016/11/04 Javascript
javascript 实现文本使用省略号替代(超出固定高度的情况)
2017/02/21 Javascript
在vue项目中使用sass的配置方法
2018/03/20 Javascript
vue-cli安装使用流程步骤详解
2018/11/08 Javascript
TypeScript开发Node.js程序的方法
2019/04/30 Javascript
在vue中把含有html标签转为html渲染页面的实例
2019/10/28 Javascript
微信小程序request请求封装,验签代码实例
2019/12/04 Javascript
vue中组件通信详解(父子组件, 爷孙组件, 兄弟组件)
2020/07/27 Javascript
Python单链表的简单实现方法
2014/09/23 Python
pandas 把数据写入txt文件每行固定写入一定数量的值方法
2018/12/28 Python
Python 通过微信控制实现app定位发送到个人服务器再转发微信服务器接收位置信息
2019/08/05 Python
关于pymysql模块的使用以及代码详解
2019/09/01 Python
Django项目使用ckeditor详解(不使用admin)
2019/12/17 Python
Python:type、object、class与内置类型实例
2019/12/25 Python
英国手机零售商:Metrofone
2019/03/18 全球购物
外企测试工程师面试题
2015/02/01 面试题
下面代码从性能上考虑,有什么问题
2015/04/03 面试题
七年级地理教学反思
2014/01/26 职场文书
有兼职工作经历的简历自我评价
2014/03/07 职场文书
残疾人小组计划书
2014/04/27 职场文书
工商管理专业毕业生求职信
2014/05/26 职场文书
Oracle配置dblink访问PostgreSQL的操作方法
2022/03/21 PostgreSQL