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

本文实例讲述了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程序设计有所帮助。

(0)

相关推荐

  • php中get_defined_constants函数用法实例分析

    本文实例讲述了php中get_defined_constants函数用法.分享给大家供大家参考.具体分析如下: get_defined_constants ( PHP 4中 > = 4.1.0 , PHP 5中) get_defined_constants -返回一个关联数组的名字所有的常量和他们的价值观 描述 阵列get_defined_constants ( [布尔$归类] ) 返回名称和值的所有当前定义的常量.这包括设立的扩展以及创建的define()函数. 参数 分类 造成这个函数返回多

  • PHP中func_get_args(),func_get_arg(),func_num_args()的区别

    复制代码 代码如下: <?php     function jb51(){            print_r(func_get_args());       echo "<br>";       echo func_get_arg(1);       echo "<br>";       echo func_num_args();      } jb51("www","jb51","

  • php检查日期函数checkdate用法实例

    本文实例讲述了php检查日期函数checkdate用法.分享给大家供大家参考.具体分析如下: php中可以使用checkdate函数校验日期的正确性. 语法 integer checkdate (int %Month, int $Day, int $Year); 演示代码 <?PHP echo "2/29/1900"; checkdate (2, 29, 1900)?print " is Valid":print " is not valid&quo

  • php中ob_flush函数和flush函数用法分析

    本文实例分析了php中ob_flush函数和flush函数用法.分享给大家供大家参考.具体如下: ob_flush()函数: 取出PHP buffering中的数据,放入server buffering flush()函数: 取出Server buffering的数据,放入browser buffering 例如代码: <?php echo str_repeat('m0sh1' ,1000); for($i=0;$i<4;$i++) { echo $i.'<br />'; ob_f

  • PHP函数func_num_args用法实例分析

    本文实例讲述了PHP函数func_num_args用法.分享给大家供大家参考,具体如下: function foo() { $numargs = func_num_args();//返回这个函数所含的参数 echo "Num fo argumets : $numargs <br>\n"; $arr=func_get_args();//返回一个数组给$arr print_r($arr);//输出这个数组所有的参数 echo "<hr>"; fo

  • PHP利用func_get_args和func_num_args函数实现函数重载实例

    本文实例讲述了PHP利用func_get_args和func_num_args函数实现函数重载的方法.分享给大家供大家参考.具体方法分析如下: 学习php的朋友都知道php本身是没有函数重载这一说的,更没说像java,c那样使用方法,但如果我们深入了解一下会发现可以在php中使用func_get_args()和func_num_args()函数实现函数重载,下面来举两个函数重载例子.这两个函数实现函数的重载. 1.默认参数,如果一个函数里面,这不是必须参数,而添加相应的默认值,就可以完成相应的功

  • php内嵌函数用法实例

    本文实例讲述了php内嵌函数用法.分享给大家供大家参考.具体分析如下: php中可以在函数内部内嵌一个函数,调用范围仅限于函数本身 <?php function msg() { echo("<center><h2>Displaying even numbers</h2></center><p><p>"); function displayeven() { $ctr=0; echo("<font

  • PHP中set error handler函数用法小结

    set_error_handler() 函数设置用户自定义的错误处理函数.该函数用于创建运行时期间的用户自己的错误处理方法.该函数会返回旧的错误处理程序,若失败,则返回 null. 下面来看一些例子. set_error_handler() PHP从4.1.0开始提供了自定义错误处理句柄的功能函数set_error_handler(),但很少数脚本编写者知道.set_error_handler这个函数可以很好地防止错误路径泄露,当然还有其它更多的作用. 1.可以用来屏蔽错误. 出现错误一来会把一

  • php正则preg_replace_callback函数用法实例

    本文实例讲述了php正则preg_replace_callback函数的用法.分享给大家供大家参考.具体实现方法如下: php正则表达式功能强大,本范例演示了preg_replace_callback函数的用法 // Define a dummy text, for testing... $Text = "Title: Hello world!\n"; $Text .= "Author: Jonas\n"; $Text .= "This is a exam

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

    本文实例讲述了PHP获取文件夹大小函数用法.分享给大家供大家参考.具体如下: <?php // 获取文件夹大小 function getDirSize($dir) { $handle = opendir($dir); while (false!==($FolderOrFile = readdir($handle))) { if($FolderOrFile != "." && $FolderOrFile != "..") { if(is_dir(

  • C#实现获取文件夹大小的方法

    本文实例讲述了C#实现获取文件夹大小的方法.分享给大家供大家参考.具体如下: 当然了,首先都需要引入System.IO这个命名空间 第一个方法: public static long GetDirectoryLength(string dirPath) { //判断给定的路径是否存在,如果不存在则退出 if (!Directory.Exists(dirPath)) return 0; long len = 0; //定义一个DirectoryInfo对象 DirectoryInfo di = n

  • Asp.Net 文件操作基类(读取,删除,批量拷贝,删除,写入,获取文件夹大小,文件属性,遍历目录)

    复制代码 代码如下: using System; using System.IO; using System.Text; using System.Data; using System.Web.UI; using System.Web.UI.WebControls; namespace ec { /// <summary> /// 文件操作类 /// </summary> public class FileObj : IDisposable { private bool _alre

  • Android 实现文件夹排序功能的实例代码

    按文件名排序 /** * 按文件名排序 * @param filePath */ public static ArrayList<String> orderByName(String filePath) { ArrayList<String> FileNameList = new ArrayList<String>(); File file = new File(filePath); File[] files = file.listFiles(); List fileL

  • Android查看文件夹大小以及删除文件夹的工具类

    在开发中当程序发生ANR或者异常,我们会将信息存在本地,然后上传服务器,这样可以实时去发现问题修改问题. 那我们需要获取文件之后需要对文件进行删除等操作,下面是写的一个工具类,用于查看文件夹大小以及删除文件夹. import android.text.TextUtils; import java.io.File; import java.math.BigDecimal; public class StorageCleanUtils { /** * 获取文件夹大小(递归) * * @param f

  • C#获取文件夹所占空间大小的功能

    虽然现在硬盘越来越大,但是清理垃圾还是必要的.这时我们往往需要一个获取文件夹所占空间大小的功能,从而判断垃圾文件的位置. 这个时候,我们常用的在右键属性中查看文件夹所占空间的方法显得效率实在太低.往往需要一些工具来辅助实现这个功能.一般有两个工具可以实现这个功能:diruse和du.diruse是MS在系统中的一个附加的工具,du是sysinternals公司的,不过sysinternals好像已经被MS收购了.这两个工具都是命令行工具,但也保持着MS一贯的简单易用的特点. 这里以diruse为

  • C#获取文件夹及文件的大小与占用空间的方法

    本文详细介绍了利用C#实现根据路径,计算这个路径所占用的磁盘空间的方法 . 网上有很多资料都是获取文件夹/文件的大小的.对于占用空间的很少有完整的代码.这里介绍实现这一功能的完整代码,供大家参考一下. 首先说下文件夹/文件大小与占用空间的区别. 这个是硬盘分区格式有关 大小是文件的实际大小,而占用空间是占硬盘的实际空间 以FAT32格式为例,硬盘的基本存储单位是簇,在FAT32中一簇是4KB 那么,也就是说即使文件只有1个字节,在硬盘上也要占到4KB的空间 如果文件是4KB零1个字节,那就要占用

  • python检测空间储存剩余大小和指定文件夹内存占用的实例

    1.检测指定路径下所有文件所占用内存 import os def check_memory(path, style='M'): i = 0 for dirpath, dirname, filename in os.walk(path): for ii in filename: i += os.path.getsize(os.path.join(dirpath,ii)) if style == 'M': memory = i / 1024. / 1024. print '%.2f MB' % me

  • C语言用fstat函数获取文件的大小方法

    之前获取文件大小总是用死办法,open一个文件,然后lseek,read这样去获取文件的大小,这样的效率实在是低,还有可能粗心大意还会出错. 一次偶然在Android的源代码中看到获取文件大小的函数,在以下范例中.用fstat这个函数可以避免这些问题. 参考百度:http://baike.baidu.com/link?url=wh6msZkLUlTCx8P6YzujB3YoHaLLVaO68sQIIPR6ICj1yXYJxHfTDvxFwzjJ4YlpZZ8IDsKhKyf9EaCHo4ARHa

  • Python文件操作函数用法实例详解

    这篇文章主要介绍了Python文件操作函数用法实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 字符编码 二进制和字符之间的转换过程 --> 字符编码 ascii,gbk,shit,fuck 每个国家都有自己的编码方式 美国电脑内存中的编码方式为ascii ; 中国电脑内存中的编码方式为gbk , 美国电脑无法识别中国电脑写的程序 , 中国电脑无法识别美国电脑写的程序 现在硬盘中躺着 ascii/gbk/shit/fuck 编码的文件,

随机推荐