正在加载...

php获取某个目录大小

[ 2010/10/22 12:32 | by selboo ]


算文件夹大小的函数:

function countDirSize($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;<br/>}


把字节转换为正常的K啊M啊之类的函数:

function get_real_size($size) {

        $kb = 1024;         // Kilobyte
        $mb = 1024 * $kb;   // Megabyte
        $gb = 1024 * $mb;   // Gigabyte
        $tb = 1024 * $gb;   // Terabyte

        if($size < $kb) {
           return $size." B";
        }else if($size < $mb) {
           return round($size/$kb,2)." KB";
        }else if($size < $gb) {
           return round($size/$mb,2)." MB";
        }else if($size < $tb) {
           return round($size/$gb,2)." GB";
        }else {
           return round($size/$tb,2)." TB";
        }

}


用法很简单:

$size_zip=countDirSize("../zip/");
$size_zip=get_real_size($size_zip);


就这么简单了,呵呵。
Tags: , ,
,
发表评论
表情
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]