{% else-1 %}
Формирует строку на основе полученного числа как количества байтов. Так же добавляется суффикс. Примеры:
echo byte_format(456); // Возвращает 456 Bytes
echo byte_format(4567); // Возвращает 4.5 KB
echo byte_format(45678); // Возвращает 44.8 KB
echo byte_format(456789); // Возвращает 447.8 KB
echo byte_format(3456789); // Возвращает 3.3 MB
echo byte_format(12345678912345); // Возвращает 1.8 GB
echo byte_format(123456789123456789); // Возвращает 11,228.3 TB

                        
<?php
function byte_format($num, $precision = 1)
{
$CI =& get_instance();
$CI->lang->load('number');

if ($num >= 1000000000000)
{
$num = round($num / 1099511627776, $precision);
$unit = $CI->lang->line('terabyte_abbr');
}
elseif ($num >= 1000000000)
{
$num = round($num / 1073741824, $precision);
$unit = $CI->lang->line('gigabyte_abbr');
}
elseif ($num >= 1000000)
{
$num = round($num / 1048576, $precision);
$unit = $CI->lang->line('megabyte_abbr');
}
elseif ($num >= 1000)
{
$num = round($num / 1024, $precision);
$unit = $CI->lang->line('kilobyte_abbr');
}
else
{
$unit = $CI->lang->line('bytes');
return number_format($num).' '.$unit;
}

return number_format($num, $precision).' '.$unit;
}
?>
0 43 0
Без комментариев...