PHP获取文件夹大小函数用法实例


Posted in PHP onJuly 01, 2015

本文实例讲述了PHP获取文件夹大小函数用法。分享给大家供大家参考。具体如下:

<?php
 // 获取文件夹大小
 function getDirSize($dir)
 { 
  $handle = opendir($dir);
  while (false!==($FolderOrFile = readdir($handle)))
  { 
   if($FolderOrFile != "." && $FolderOrFile != "..") 
   { 
    if(is_dir("$dir/$FolderOrFile"))
    { 
     $sizeResult += getDirSize("$dir/$FolderOrFile"); 
    }
    else
    { 
     $sizeResult += filesize("$dir/$FolderOrFile"); 
    }
   } 
  }
  closedir($handle);
  return $sizeResult;
 }
 // 单位自动转换函数
 function getRealSize($size)
 { 
  $kb = 1024;   // Kilobyte
  $mb = 1024 * $kb; // Megabyte
  $gb = 1024 * $mb; // Gigabyte
  $tb = 1024 * $gb; // Terabyte
  if($size < $kb)
  { 
   return $size." B";
  }
  else if($size < $mb)
  { 
   return round($size/$kb,2)." KB";
  }
  else if($size < $gb)
  { 
   return round($size/$mb,2)." MB";
  }
  else if($size < $tb)
  { 
   return round($size/$gb,2)." GB";
  }
  else
  { 
   return round($size/$tb,2)." TB";
  }
 }
 echo getRealSize(getDirSize('需要获取大小的目录'));
?>

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

PHP 相关文章推荐
php+mysql事务rollback&amp;commit示例
Feb 08 PHP
php 获取一个月第一天与最后一天的代码
May 16 PHP
php循环检测目录是否存在并创建(循环创建目录)
Jan 06 PHP
解析php中call_user_func_array的作用
Jun 07 PHP
php获取数组长度的方法(有实例)
Oct 27 PHP
thinkphp配置连接数据库技巧
Dec 02 PHP
PHP PDO fetch 模式各种参数的输出结果一览
Jan 07 PHP
php上传大文件失败的原因及应对策略
Oct 20 PHP
PHP发送AT指令实例代码
May 26 PHP
Yii框架弹出窗口组件CJuiDialog用法分析
Jan 07 PHP
php面向对象的用户登录身份验证
Jun 08 PHP
PHP实现数组转JSon和JSon转数组的方法示例
Jun 14 PHP
Thinkphp模板标签if和eq的区别和比较实例分析
Jul 01 #PHP
ThinkPHP V2.2说明文档没有说明的那些事实例小结
Jul 01 #PHP
PHP判断是否连接上网络的方法
Jul 01 #PHP
PHP抓取网页、解析HTML常用的方法总结
Jul 01 #PHP
PHP中static关键字以及与self关键字的区别
Jul 01 #PHP
PHP单例模式详细介绍
Jul 01 #PHP
curl和libcurl的区别简介
Jul 01 #PHP
You might like
PHP中路径问题的解决方案
2006/10/09 PHP
PHP 日期时间函数的高级应用技巧
2009/10/10 PHP
实现PHP框架系列文章(6)mysql数据库方法
2016/03/04 PHP
一个简单的JavaScript 日期计算算法
2009/09/11 Javascript
页面调用单个swf文件,嵌套出多个方法。
2011/11/21 Javascript
JQuery中判断一个元素下面是否有内容或者有某个标签的判断代码
2012/02/02 Javascript
js监听键盘事件示例代码
2013/07/26 Javascript
jquery中常用的函数和属性详细解析
2014/03/07 Javascript
js 设置缓存及获取设置的缓存
2014/05/08 Javascript
如何让浏览器支持jquery ajax load 前进、后退功能
2014/06/12 Javascript
轻量级网页遮罩层jQuery插件用法实例
2015/07/31 Javascript
jquery实现的动态回到顶部特效代码
2015/10/28 Javascript
jQuery设置Cookie及删除Cookie实例分析
2016/04/15 Javascript
jQuery代码实现图片墙自动+手动淡入淡出切换效果
2016/05/09 Javascript
vue-cli3.0使用及部分配置详解
2018/08/29 Javascript
Nuxt.js开启SSR渲染的教程详解
2018/11/30 Javascript
js字符串类型String常用操作实例总结
2019/07/05 Javascript
vue 添加和编辑用同一个表单,el-form表单提交后清空表单数据操作
2020/08/03 Javascript
一篇不错的Python入门教程
2007/02/08 Python
python利用datetime模块计算时间差
2015/08/04 Python
python爬虫入门教程--优雅的HTTP库requests(二)
2017/05/25 Python
python实现日常记账本小程序
2018/03/10 Python
Python错误处理操作示例
2018/07/18 Python
python打印文件的前几行或最后几行教程
2020/02/13 Python
Python3 assert断言实现原理解析
2020/03/02 Python
详解python内置模块urllib
2020/09/09 Python
Python: glob匹配文件的操作
2020/12/11 Python
HTML5实践-图片设置成灰度图
2012/11/12 HTML / CSS
印度婴儿用品在线商店:Firstcry.com
2016/12/05 全球购物
欧尚俄罗斯网上超市:Auchan俄罗斯
2018/05/03 全球购物
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
不遵守课堂纪律的检讨书
2014/09/24 职场文书
爱心募捐感谢信
2015/01/22 职场文书
高中数学课堂教学反思
2016/02/18 职场文书
疑《守望先锋2》A测截图泄露 或将推出新模式、新界面
2022/04/03 其他游戏
Linux中各个目录的作用与内容
2022/06/28 Servers