转自 How to Convert File Size to Human Readable Format in PHP
三行完成,太强了!
后面的PB, EB, ZB, YB有需要的可以加上
function convertFilesize($bytes, $decimals=2)
{
$size = ['B', 'kB', 'MB', 'GB', 'TB'];
$factor = floor((strlen($bytes) - 1) / 3);
return sprintf("%.{$decimals}f", $bytes / pow(1024, $factor)) . @$size[$factor];
}