您可以将此代码用作帮助程序,使其易于阅读:
/**
* 将字节转换为人类可读的文件大小。
*
* @param 字符串 $bytes
* @return 字符串人类可读的文件大小 (2,87 Мб)
* @作者莫吉廖夫阿尔塞尼
*/
函数 FileSizeConvert($bytes)
{
$bytes = floatval($bytes);
$arBytes = 数组(
0 => 数组(
"单位" => "TB",
"价值" => pow(1024, 4)
),
1 => 数组(
"单位" => "GB",
"价值" => pow(1024, 3)
),
2 => 数组(
"单位" => "MB",
"价值" => pow(1024, 2)
),
3 => 数组(
"单位" => "KB",
“价值”=> 1024
),
4 => 数组(
"单位" => "B",
“价值”=> 1
),
);
foreach($arBytes 作为 $arItem)
{
if($bytes >= $arItem["VALUE"])
{
$result = $bytes / $arItem["VALUE"];
$result = str_replace(".", "," , strval(round($result, 2)))." ".$arItem["UNIT"];
休息;
}
}
返回$结果;
}
或使用此功能手动转换文件大小:
函数 changeType($size, $from, $to){
$arr = ['B', 'KB', 'MB', 'GB', 'TB'];
$tSayi = array_search($to, $arr);
$eSayi = array_search($from, $arr);
$pow = $eSayi - $tSayi;
返回 $size * pow(1024, $pow) 。 ' ' 。 $到;
}
回声 changeType(1, 'MB', 'KB');