Размер файла. Перевод байт в КБ, Мб и тд

Рецепт №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;
}
Рассказать друзьям:


Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*