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计算整个目录大小的方法 的全部内容, 来源链接: utcz.com/z/325840.html

回到顶部