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 相关文章推荐
Google Voice 短信发送接口PHP开源版(2010.5更新)
Jul 22 PHP
PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题
May 29 PHP
修改php.ini以达到屏蔽错误信息并记录日志
Jun 16 PHP
PHP中source #N问题的解决方法
Jan 27 PHP
PHP生成条形码大揭秘
Sep 24 PHP
php 的反射详解及示例代码
Aug 25 PHP
PHP基于自增数据如何生成不重复的随机数示例
May 19 PHP
使用Zttp简化Guzzle 调用
Jul 02 PHP
php识别翻转iphone拍摄的颠倒图片
May 17 PHP
Yii2.0实现的批量更新及批量插入功能示例
Jan 29 PHP
laravel 去掉index.php伪静态的操作方法
Oct 12 PHP
Jsonp劫持学习
Apr 01 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实现paypal整合方法
2010/11/28 PHP
PHP抽象类 介绍
2012/06/13 PHP
thinkphp实现多语言功能(语言包)
2014/03/04 PHP
PHP大批量插入数据库的3种方法和速度对比
2014/07/08 PHP
ioncube_loader_win_5.2.dll的错误解决方法
2015/01/04 PHP
简单谈谈PHP中strlen 函数
2016/02/27 PHP
使用laravel的migrate创建数据表的方法
2019/09/30 PHP
gearman中worker常驻后台,导致MySQL server has gone away的解决方法
2020/02/27 PHP
jQuery的Ajax时无响应数据的解决方法
2010/05/25 Javascript
鼠标左键单击冲突的问题解决方法(防止冒泡)
2014/05/14 Javascript
js星星评分效果
2014/07/24 Javascript
JavaScript fontcolor方法入门实例(按照指定的颜色来显示字符串)
2014/10/17 Javascript
JS长整型精度问题实例分析
2015/01/13 Javascript
JavaScript实现简单的二级导航菜单实例
2015/04/15 Javascript
js+css实现文字散开重组动画特效代码分享
2015/08/21 Javascript
jquery 表单验证之通过 class验证表单不为空
2015/11/02 Javascript
JavaScript测试工具之Karma-Jasmine的安装和使用详解
2015/12/03 Javascript
Javascript类型系统之String字符串类型详解
2016/06/21 Javascript
VueJS组件之间通过props交互及验证的方式
2017/09/04 Javascript
深入理解Vue 的钩子函数
2018/09/05 Javascript
JQuery发送ajax请求时中文乱码问题解决
2019/11/14 jQuery
vue项目中在可编辑div光标位置插入内容的实现代码
2020/01/07 Javascript
JavaScript实现随机点名器
2020/03/25 Javascript
JavaScript中作用域链的概念及用途讲解
2020/08/06 Javascript
Python优化技巧之利用ctypes提高执行速度
2016/09/11 Python
Python基于dom操作xml数据的方法示例
2018/05/12 Python
python的一些加密方法及python 加密模块
2019/07/11 Python
如何在python中实现随机选择
2019/11/02 Python
python 计算方位角实例(根据两点的坐标计算)
2020/01/17 Python
利用HTML5 Canvas制作一个简单的打飞机游戏
2015/05/11 HTML / CSS
员工培训心得体会
2013/12/30 职场文书
教育学习自我评价
2014/02/03 职场文书
运动会广播稿200米(5篇)
2014/10/15 职场文书
优秀党员事迹材料
2014/12/18 职场文书
物业接待员岗位职责
2015/04/15 职场文书
红色故事汇观后感
2015/06/18 职场文书