Рецепт №62. Из книги «128 рецептов php»
Перейти к оглавлению
В приведенном выше примере – получение размера файла, результат будет выведен в байтах, это несколько неудобно, и чтобы вывести результат в читабельном виде, можно написать небольшую функцию для форматированного вывода. Эта пользовательская функция работает очень просто – определяет количество разрядов байт, и в зависимости от полученного результата возвращает нужное название единицы измерения информации.
Пример:
// размер файла
// путь до файла и его название
$file_name = "/file.txt";
$size = filesize($file_name);
// вызываем функцию для форматирования размера файла
echo format_size($size);
// функция форматирует вывод размера файла
function format_size($size){
$metrics[0] = 'байт';
$metrics[1] = 'Кбайт';
$metrics[2] = 'Мбайт';
$metrics[3] = 'Гбайт';
$metrics[4] = 'Тбайт';
$metric = 0;
while(floor($size / 1024) > 0){
$metric ++;
$size /= 1024;
}
$result = round($size, 1) . " " .
(isset($metrics[$metric]) ? $metrics[$metric] : '???');
return $result;
}
