Функция для удобного отображения размера файла

Обычно размеры файлов хранятся в байтах. Для удобного отображения можно применять следующую функцию

function bytes2readable($v, $l = 0, $precision = 2) {
     $label = array(' Кб', ' Мб', ' Гб');
     $val = $v / 1024;
     if (floor($val) >= 1024) {
         $l++;
         $val = bytes2readable(floor($val), &$l);
     }
     return round($val, $precision).$label[$l];
}
bytes2readable(1000); // 0.98 Кб
bytes2readable(10000); // 9.77 Кб
bytes2readable(123456789); // 117.74 Мб
#1

Функция для удобного отображения размера файла работает некорректно .....
Правильно переводятся только килобайты ....

Petrovich, 9.07.2009 - 09:56
#2

function bytes2words($size) {
for($i=0; $i<count($st=array('Кб','Мб','Гб')); $i++) {
if (($size/=1024)<1024) { $i++; break; }
}
return round($size,2).' '.$st[($i-1)];
}

Z, 18.04.2012 - 11:04
Оставить комментарий