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带密码功能并下载远程文件保存本地指定目录 修改加强版
May 16 PHP
php设计模式 Delegation(委托模式)
Jun 26 PHP
PHP教程之PHP中shell脚本的使用方法分享
Feb 23 PHP
PHP 中关于ord($str)>0x80的详细说明
Sep 23 PHP
真正根据utf8编码的规律来进行截取字符串的函数(utf8版sub_str )
Oct 24 PHP
解析php时间戳与日期的转换
Jun 06 PHP
php Calender(日历)代码分享
Jan 03 PHP
10个实用的PHP正则表达式汇总
Oct 23 PHP
php绘制圆形的方法
Jan 24 PHP
php 利用array_slice函数获取随机数组或前几条数据
Sep 30 PHP
PHP简单判断字符串是否包含另一个字符串的方法
Mar 25 PHP
php闭包中使用use声明变量的作用域实例分析
Aug 09 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
山进SANGEAN ATS-909X电路分析
2021/03/02 无线电
php中在PDO中使用事务(Transaction)
2011/05/14 PHP
解析:通过php socket并借助telnet实现简单的聊天程序
2013/06/18 PHP
ThinkPHP中Session用法详解
2014/11/29 PHP
Jquery 点击按钮显示和隐藏层的代码
2011/07/25 Javascript
删除条目时弹出的确认对话框
2014/06/05 Javascript
一个简单的jQuery计算器实现了连续计算功能
2014/07/21 Javascript
如何正确使用Nodejs 的 c++ module 链接到 OpenSSL
2014/08/03 NodeJs
JS实现灵巧的下拉导航效果代码
2015/08/25 Javascript
jQuery 3.0 的变化及使用方法
2016/02/01 Javascript
electron制作仿制qq聊天界面的示例代码
2018/11/26 Javascript
javascript对HTML字符转义与反转义
2018/12/13 Javascript
[14:56]教你分分钟做大人:巫医
2014/10/30 DOTA
[01:54]TI珍贵瞬间系列(五):压力
2020/08/29 DOTA
Python中实现对list做减法操作介绍
2015/01/09 Python
Python中使用bidict模块双向字典结构的奇技淫巧
2016/07/12 Python
Django中create和save方法的不同
2019/08/13 Python
Laravel框架表单验证格式化输出的方法
2019/09/25 Python
使用TensorFlow搭建一个全连接神经网络教程
2020/02/06 Python
pycharm设置当前工作目录的操作(working directory)
2020/02/14 Python
python实现打砖块游戏
2020/02/25 Python
20行Python代码实现视频字符化功能
2020/04/13 Python
在Keras中利用np.random.shuffle()打乱数据集实例
2020/06/15 Python
纯CSS3实现Material Design效果
2017/03/09 HTML / CSS
瑜伽国际:Yoga International
2018/04/18 全球购物
瑞典的玛丽小姐:Miss Mary of Sweden
2019/02/13 全球购物
仓管员岗位职责范文
2013/11/08 职场文书
毕业生的自我评价
2013/12/30 职场文书
大学课外活动总结
2014/07/09 职场文书
党的群众路线教育实践活动对照检查材料(四风)
2014/09/27 职场文书
2014年评职称工作总结
2014/11/20 职场文书
故宫英文导游词
2015/01/31 职场文书
2015年迎新晚会策划书
2015/07/16 职场文书
MySQL窗口函数的具体使用
2021/11/17 MySQL
Python OpenCV超详细讲解基本功能
2022/04/02 Python
win11无线投屏在哪设置? win11无线投屏功能的使用方法
2022/04/08 数码科技