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

5年以前  |  阅读数:724 次  |  编程语言: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程序设计有所帮助。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8