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

5年以前  |  阅读数:808 次  |  编程语言:PHP 

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


    /**
     * Calculate the full size of a directory
     *
     * @author   Jonas John
     * @version   0.2
     * @link    http://www.jonasjohn.de/snippets/php/dir-size.htm
     * @param    string  $DirectoryPath  Directory path
     */
    function CalcDirectorySize($DirectoryPath) {
      // I reccomend using a normalize_path function here
      // to make sure $DirectoryPath contains an ending slash
      // (-> http://www.jonasjohn.de/snippets/php/normalize-path.htm)
      // To display a good looking size you can use a readable_filesize
      // function.
      // (-> http://www.jonasjohn.de/snippets/php/readable-filesize.htm)
      $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分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例