上传的文件大小单位是byte
使用本函数可对文件大小格式化,转换成合适的单位,显示到模板中。
/**
* 文件大小单位格式化
* @param $bytes 文件实际大小,单位byte
* @param $prec 转换后精确度,默认精确到小数点后两位
* @return 转换后的大小+单位的字符串
*/
function fsizeformat($bytes,$prec=2){
$rank=0;
$size=$bytes;
$unit="B";
while($size>1024){
$size=$size/1024;
$rank++;
}
$size=round($size,$prec);
switch ($rank){
case "1":
$unit="KB";
break;
case "2":
$unit="MB";
break;
case "3":
$unit="GB";
break;
case "4":
$unit="TB";
break;
default :
}
return $size." ".$unit;
}
使用方法:将该函数添加到 项目Common/common.php 中,清空runtime后即可生效。你可以在控制器或者模板中直接调用,在模板中调用示例:
<p>文件大小:{$filesize|fsizeformat}</p>