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删除记录操作代码
Jun 07 PHP
php cli 小技巧
Jun 03 PHP
无刷新动态加载数据 滚动条加载适合评论等页面
Oct 16 PHP
PHP三元运算的2种写法代码实例
May 12 PHP
PHP图片等比例缩放生成缩略图函数分享
Jun 10 PHP
PHP实现的简单日历类
Nov 29 PHP
php截取中文字符串函数实例
Feb 23 PHP
详解PHP归并排序的实现
Oct 18 PHP
PHP获取input输入框中的值去数据库比较显示出来
Nov 16 PHP
thinkPHP5 tablib标签库自定义方法详解
May 10 PHP
PHP基于自增数据如何生成不重复的随机数示例
May 19 PHP
解决laravel(5.5)访问public报错的问题
Oct 12 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
实用函数8
2007/11/08 PHP
php str_pad 函数用法简介
2009/07/11 PHP
jQuery 源码分析笔记
2011/05/25 PHP
php中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
phpword插件导出word文件时中文乱码问题处理方案
2014/08/19 PHP
PHP实现下载断点续传的方法
2014/11/12 PHP
从JavaScript的函数重名看其初始化方式
2007/03/08 Javascript
js 变量类型转换常用函数与代码[比较全]
2009/12/01 Javascript
JS取request值以及自动执行使用示例
2014/02/24 Javascript
JS、jquery实现几分钟前、几小时前、几天前等时间差显示效果的代码实例分享
2014/04/11 Javascript
jquery中each遍历对象和数组示例
2014/08/05 Javascript
javascript文本框内输入文字倒计数的方法
2015/02/24 Javascript
jQuery使用$.ajax进行即时验证的方法
2015/12/08 Javascript
Vue+axios实现统一接口管理的方法
2018/07/23 Javascript
详解swiper在vue中的应用(以3.0为例)
2018/09/20 Javascript
使用imba.io框架得到比 vue 快50倍的性能基准
2019/06/17 Javascript
使用PreloadJS加载图片资源的基础方法详解
2020/02/03 Javascript
Jquery使用each函数实现遍历及数组处理
2020/07/14 jQuery
jQuery实现全选按钮
2021/01/01 jQuery
Python 调用VC++的动态链接库(DLL)
2008/09/06 Python
Python os模块介绍
2014/11/30 Python
浅谈django model postgres的json字段编码问题
2018/01/05 Python
python生成lmdb格式的文件实例
2018/11/08 Python
python 实现在tkinter中动态显示label图片的方法
2019/06/13 Python
pytorch使用指定GPU训练的实例
2019/08/19 Python
如何基于Python按行合并两个txt
2020/11/03 Python
python 制作网站小说下载器
2021/02/20 Python
浅谈HTML5 defer和async的区别
2016/06/07 HTML / CSS
后勤岗位职责
2013/11/26 职场文书
化工操作工岗位职责
2014/04/29 职场文书
治安消防安全责任书
2014/07/23 职场文书
工作表扬信范文
2015/01/17 职场文书
高三语文教学反思
2016/02/16 职场文书
pycharm安装深度学习pytorch的d2l包失败问题解决
2022/03/25 Python
Java中的Kotlin 内部类原理
2022/06/16 Java/Android
Nginx如何限制IP访问只允许特定域名访问
2022/07/23 Servers