/**
 * Подсчитывает размер всех файлов в папке.
 * @param $Folder Имя папки.
 * @return int
 */
function GetFolderSize($Folder)
{
    $file_size = 0;
    AddLastSlash($Folder);
    $files = scandir($Folder);
    foreach ($files as $file) {
        if ($file != '.' && $file != '..') {
            $f = $Folder . $file;
            if (is_dir($f)) {
                $file_size += GetFolderSize($f);
            } else {
                $file_size += filesize($f);
            }
        }
    }
    return $file_size;
}
Exemple #2
0
function GetDirectorySize($dirname) {

        // open the directory, if the script cannot open the directory then return folderSize = 0
        $dir_handle = opendir($dirname);
        if (!$dir_handle) return 0;

        // traversal for every entry in the directory
        while ($file = readdir($dir_handle)){

            // ignore '.' and '..' directory
            if  ($file  !=  "."  &&  $file  !=  "..")  {

                // if entry is directory then go recursive !
                if  (is_dir($dirname."/".$file)){
                          $folderSize += GetFolderSize($dirname.'/'.$file);

                // if file then accumulate the size
                } else {
                      $folderSize += filesize($dirname."/".$file);
                }
            }
        }
        // chose the directory
        closedir($dir_handle);

        // return $dirname folder size
        return $folderSize ;
}
Exemple #3
0
function getFolderSize($d = ".")
{
    // © kasskooye and patricia benedetto
    $h = @opendir($d);
    if ($h == 0) {
        return 0;
    }
    while ($f = readdir($h)) {
        if ($f != "..") {
            $sf += filesize($nd = $d . "/" . $f);
            if ($f != "." && is_dir($nd)) {
                $sf += GetFolderSize($nd);
            }
        }
    }
    closedir($h);
    return $sf;
}
Exemple #4
0
function GetFolderSize($dir)
{
    if (!$dir or !is_dir($dir)) {
        return 0;
    }
    $ret = 0;
    $sub = opendir($dir);
    while ($file = readdir($sub)) {
        if (is_dir($dir . '/' . $file) && $file !== ".." && $file !== ".") {
            $ret += GetFolderSize($dir . '/' . $file);
            unset($file);
        } elseif (!is_dir($dir . '/' . $file)) {
            $stats = stat($dir . '/' . $file);
            $ret += $stats['size'];
            unset($file);
        }
    }
    closedir($sub);
    unset($sub);
    return $ret;
}