其他转byte
function toKb($str)
{
if (!preg_match('/^([\d.]+)([BKMGTPE]?)(B)?$/i', trim($str), $m)) return 0;
return (int)floor($m[1] * ($m[2] ? (1024 ** strpos('BKMGTPE', strtoupper($m[2]))) : 1));
}
byte转其他
function getFilesize($num) {
$p = 0;
$format = 'bytes';
if( $num > 0 && $num < 1024 ) {
$p = 0;
return number_format($num) . ' ' . $format;
}
if( $num >= 1024 && $num < pow(1024, 2) ){
$p = 1;
$format = 'KB';
}
if ( $num >= pow(1024, 2) && $num < pow(1024, 3) ) {
$p = 2;
$format = 'MB';
}
if ( $num >= pow(1024, 3) && $num < pow(1024, 4) ) {
$p = 3;
$format = 'GB';
}
if ( $num >= pow(1024, 4) && $num < pow(1024, 5) ) {
$p = 3;
$format = 'TB';
}
$num /= pow(1024, $p);
return number_format($num, 3) . ' ' . $format;
}
Comment here is closed