>php教程 >php手册 >获取文件夹大小(PHP函数)

获取文件夹大小(PHP函数)

WBOY
WBOY원래의
2016-06-21 09:06:29765검색

函数

    // 获取文件夹大小
    function getDirSize($dir)
    {
        $handle = opendir($dir);
        while (false!==($FolderOrFile = readdir($handle)))
        {
            if($FolderOrFile != "." && $FolderOrFile != "..")
            {
                if(is_dir("$dir/$FolderOrFile"))
                {
                    $sizeResult += getDirSize("$dir/$FolderOrFile");
                }
                else
                {
                    $sizeResult += filesize("$dir/$FolderOrFile");
                }
            }   
        }
        closedir($handle);
        return $sizeResult;
    }

    // 单位自动转换函数
    function getRealSize($size)
    {
        $kb = 1024;         // Kilobyte
        $mb = 1024 * $kb;   // Megabyte
        $gb = 1024 * $mb;   // Gigabyte
        $tb = 1024 * $gb;   // Terabyte
       
        if($size         {
            return $size." B";
        }
        else if($size         {
            return round($size/$kb,2)." KB";
        }
        else if($size         {
            return round($size/$mb,2)." MB";
        }
        else if($size         {
            return round($size/$gb,2)." GB";
        }
        else
        {
            return round($size/$tb,2)." TB";
        }
    }

    echo  getRealSize(getDirSize('需要获取大小的目录'));

?>



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.