PHP统计目录中文件以及目录中目录大小的方法


Posted in PHP onJanuary 09, 2016

本文实例讲述了PHP统计目录中文件以及目录中目录大小的方法。分享给大家供大家参考,具体如下:

<?php
 //循环遍历目录中所有的文件,并统计目录和文件的大小
 $dirName="phpMyAdmin";
 $dir=opendir($dirName); //返回一个资源类型
 while($fileName=readdir($dir)){
 $file=$dirName."/".$fileName;
 if($fileName!="." && $fileName!=".."){
  if(is_dir($file)){
  echo "<font color='red'>".$fileName."===".date("Y-m-d H:i:s",filectime($file))."==".filetype($file)."==".toSize(dirSize($file))."</font><br/>";
  }
  else{
  echo "<font color='green'>".$fileName."=====".date("Y-m-d H:i:s",filectime($file))."====".filetype($file)."====".toSize(filesize($file))."</font><br/>";
  }
 }
 }
 closedir($dir);
 //把文件或目录的大小转化为容易读的方式
 function toSize($size){
 $dw; //指定文件或目录统计的单位方式
 if($size>pow(2,30)){
  $dw="GB";
  $size=round($size/pow(2,30),2);
 }
 else if($size>pow(2,20)){
  $dw="MB";
  $size=round($size/pow(2,20),2);
 }
 else if($size>pow(2,10)){
  $dw="KB";
  $size=round($size/pow(2,10),2);
 }
 else
 {
  $dw="bytes";
 }
 return $size.$dw;
 }
 //利用递归的方式统计目录的大小
 function dirSize($dirName){
 $dirsize=0;
 $dir=opendir($dirName);
 while($fileName=readdir($dir)){
  $file=$dirName."/".$fileName;
  if($fileName!="." && $fileName!=".."){ //一定要进行判断,否则会出现错误的
  if(is_dir($file)){
   $dirsize+=dirSize($file);
  }
  else{
   $dirsize+=filesize($file);
  }
  }
 }
 closedir($dir);
 return $dirsize;
 }
?>

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

PHP 相关文章推荐
php基础知识:类与对象(3) 构造函数和析构函数
Dec 13 PHP
谈PHP生成静态页面分析 模板+缓存+写文件
Aug 17 PHP
PHP 设置MySQL连接字符集的方法
Jan 02 PHP
利用PHP扩展vld查看PHP opcode操作步骤
Mar 04 PHP
codeigniter框架The URI you submitted has disallowed characters错误解决方法
May 06 PHP
php中使用sftp教程
Mar 30 PHP
Codeigniter中集成smarty和adodb的方法
Mar 04 PHP
PHP命令空间namespace及use的用法小结
Nov 27 PHP
Laravel框架实现的使用smtp发送邮件功能示例
Mar 12 PHP
定位地理位置PHP判断员工打卡签到经纬度是否在打卡之内
May 23 PHP
Laravel使用Queue队列的技巧汇总
Sep 02 PHP
PHP中用Trait封装单例模式的实现
Dec 18 PHP
PHP基于单例模式实现的mysql类
Jan 09 #PHP
thinkPHP查询方式小结
Jan 09 #PHP
thinkPHP中多维数组的遍历方法
Jan 09 #PHP
ThinkPHP中html:list标签用法分析
Jan 09 #PHP
thinkphp中字符截取函数msubstr()用法分析
Jan 09 #PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
Jan 09 #PHP
yii2框架中使用下拉菜单的自动搜索yii-widget-select2实例分析
Jan 09 #PHP
You might like
WIN98下Apache1.3.14+PHP4.0.4的安装
2006/10/09 PHP
php中判断字符串是否全是中文或含有中文的实现代码
2011/09/16 PHP
基于jQuery的日期选择控件
2009/10/27 Javascript
javascript解三阶幻方(九宫格)
2015/04/22 Javascript
浅谈JavaScript中数组的增删改查
2016/06/20 Javascript
通过bootstrap全面学习less
2016/11/09 Javascript
angularjs中ng-bind-html的用法总结
2017/05/23 Javascript
微信小程序 http请求的session管理
2017/06/07 Javascript
JS原生轮播图的简单实现(推荐)
2017/07/22 Javascript
vue.js移动端app之上拉加载以及下拉刷新实战
2017/09/11 Javascript
详解vue-cli 接口代理配置
2017/12/13 Javascript
nodejs简单访问及操作mysql数据库的方法示例
2018/03/15 NodeJs
微信小程序日历弹窗选择器代码实例
2019/05/09 Javascript
QML实现圆环颜色选择器
2019/09/25 Javascript
Vue 实现CLI 3.0 + momentjs + lodash打包时优化
2019/11/13 Javascript
用实例解释Python中的继承和多态的概念
2015/04/27 Python
Python输出PowerPoint(ppt)文件中全部文字信息的方法
2015/04/28 Python
Python 遍历列表里面序号和值的方法(三种)
2017/02/17 Python
Python实现将Excel转换成xml的方法示例
2018/08/25 Python
python正则表达式去除两个特殊字符间的内容方法
2018/12/24 Python
对python操作kafka写入json数据的简单demo分享
2018/12/27 Python
详解Python中的各种转义符\n\r\t
2019/07/10 Python
Python PIL图片添加字体的例子
2019/08/22 Python
利用rest framework搭建Django API过程解析
2019/08/31 Python
英国的领先快速时尚零售商:In The Style
2019/03/25 全球购物
What is view? why do we have view?
2012/06/22 面试题
医院实习接收函
2014/01/12 职场文书
教室标语大全
2014/06/21 职场文书
领导干部整治奢华浪费之风思想汇报
2014/10/07 职场文书
海洋天堂观后感
2015/06/05 职场文书
2016秋季校长开学典礼致辞
2015/11/26 职场文书
历史名人教你十五个读书方法,赶快Get起来!
2019/07/18 职场文书
解决Mysql多行子查询的使用及空值问题
2022/01/22 MySQL
《辉夜大小姐想让我告白》第三季正式预告
2022/03/20 日漫
直播实况, OMG破敌三路五十分钟大战神技局摩托车
2022/04/01 DOTA
Python中文分词库jieba(结巴分词)详细使用介绍
2022/04/07 Python