PHP 获得文件夹大小 计算文件_PHP教程

WBOY
发布: 2016-07-13 17:37:44
原创
804 人浏览过

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(dirname($_SERVER[SCRIPT_FILENAME])./include/));


?>

#########################################################

//function dirsize($dir)
//{
//   $handle=opendir($dir);
//   $size = 0;
//   while ( $file=readdir($handle) )
//   {
//       if ( ( $file == "." ) || ( $file == ".." ) ) continue;
//       if ( is_dir("$dir/$file") )
//           $size += dirsize("$dir/$file");
//       else
//           $size += filesize("$dir/$file");
//   }
//   closedir($handle);
//   return $size;
//}
//$big=dirsize(dirname($_SERVER[SCRIPT_FILENAME])."/");
//echo $big;

得到的结果是小数点后两位的

$big*1024 得到单位为KB

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/486551.htmlTechArticle?php function getDirSize($dir) { $handle = opendir($dir); while (false!==($FolderOrFile = readdir($handle))) { if($FolderOrFile != . $FolderOrFile != ..) { if(is_dir($dir/$FolderOr...
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!