php计算整个目录大小的方法

 更新时间:2015年06月19日 16:17:50   作者:不吃皮蛋  
这篇文章主要介绍了php计算整个目录大小的方法,涉及php针对目录操作的相关技巧,需要的朋友可以参考下

本文实例讲述了php计算整个目录大小的方法。分享给大家供大家参考。具体实现方法如下:

/**
 * Calculate the full size of a directory
 *
 * @author   Jonas John
 * @version   0.2
 * @param    string  $DirectoryPath  Directory path
 */
function CalcDirectorySize($DirectoryPath) {
  // I reccomend using a normalize_path function here
  // to make sure $DirectoryPath contains an ending slash
  // To display a good looking size you can use a readable_filesize
  // function.
  $Size = 0;
  $Dir = opendir($DirectoryPath);
  if (!$Dir)
    return -1;
  while (($File = readdir($Dir)) !== false) {
    // Skip file pointers
    if ($File[0] == '.') continue; 
    // Go recursive down, or add the file size
    if (is_dir($DirectoryPath . $File))      
      $Size += CalcDirectorySize($DirectoryPath . $File . DIRECTORY_SEPARATOR);
    else 
      $Size += filesize($DirectoryPath . $File);    
  }
  closedir($Dir);
  return $Size;
}
//使用范例:
$SizeInBytes = CalcDirectorySize('data/');

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

相关文章

  • 通用PHP动态生成静态HTML网页的代码

    通用PHP动态生成静态HTML网页的代码

    最近研究PHP的一些开发技术,发现PHP有很多ASP所没有的优秀功能,可以完成一些以前无法完成的功能,例如动态生成HTML静态页面,以减少服务器CPU的负载,提高用户访问的速度。
    2010-03-03
  • php数据库配置文件一般做法分享

    php数据库配置文件一般做法分享

    将数据库用户名密码等信息写到配置文件config.php里,在在需要引用配置文件内容的文件里用include或require包含进来,并在函数里用global关键字将存放数据库名,密码等的变量全局化,这样就可以在文件里的函数里使用了
    2012-07-07
  • PHP实现15位身份证号转18位的方法分析

    PHP实现15位身份证号转18位的方法分析

    这篇文章主要介绍了PHP实现15位身份证号转18位的方法,结合实例形式分析了15位身份证号转18位的相关原理与php实现技巧,需要的朋友可以参考下
    2019-10-10
  • php实现的表单验证类完整示例

    php实现的表单验证类完整示例

    这篇文章主要介绍了php实现的表单验证类,结合完整实例形式分析了php封装的表单相关的正则验证、字符串转换等相关操作技巧,需要的朋友可以参考下
    2019-08-08
  • CodeIgniter生成网站sitemap地图的方法

    CodeIgniter生成网站sitemap地图的方法

    用CodeIgniter只需要三步就可以生成网站sitemap地图,方法很简单,大家可以参考一下
    2013-11-11
  • 七款最流行的PHP本地服务器分享

    七款最流行的PHP本地服务器分享

    文章介绍了7个最常用的PHP本地服务器,一般来说,本地的PHP平台分为两种,一种是LAMP,即为Linux+Apache+MySql+PHP;另一种是WAMP,它是Windows+Apache+MySql+PHP,而前者一般优秀于后者。当然,本文将主要针对WAMP平台上
    2013-02-02
  • php中全局变量global的使用演示代码

    php中全局变量global的使用演示代码

    用php编程的人对流程这个名词很熟悉。一般做php的工程师对面向对象的理解不是太深,所以在大流程中的方法中需要调用到外面变量,所以用的全局变量的机会会很多
    2011-05-05
  • PHP删除数组中指定值的元素常用方法实例分析【4种方法】

    PHP删除数组中指定值的元素常用方法实例分析【4种方法】

    这篇文章主要介绍了PHP删除数组中指定值的元素常用方法,结合实例形式对比分析了4种常用的数组遍历与元素删除方法,并总结分析了相关算法优缺点,需要的朋友可以参考下
    2018-08-08
  • PHP超全局变量实现原理及代码解析

    PHP超全局变量实现原理及代码解析

    这篇文章主要介绍了PHP超全局变量实现原理及代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • 浅谈如何提高PHP代码质量之单元测试

    浅谈如何提高PHP代码质量之单元测试

    最常见的测试软件的方法可能是编写单元测试。它们的目的是测试代码的特定单元,基于这样的假设:一切都按预期运行。为了能够编写适当的单元测试,我们的代码应该遵循一些基本的设计规则。我们应该特别关注 SOLID 原则。
    2021-05-05

最新评论