本文實例講述了php計算整個目錄大小的方法。分享給大家供大家參考。具體實現方法如下:
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 /** * 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程序設計有所幫助。