CFile::FormatSize перевод из байтов в килобайты, мегабайты...

Если у вас возникли какие либо вопросы которые вы не смогли решить по нашим публикациям самостоятельно,
то ждем ваше обращение в нашей службе тех поддержки.


Метод FormatSize в классе CFile

Буквально случайно, наткнулся в БУС 12.5 на замечательный метод CFile::FormatSize. Метод принимает два параметра: размер файла в ($size) и округление ($precision). Возвращает текстом размер файла, округленный до последнего целого значения и текстовую подпись размера в байтах, килобайтах и тд с учетом языка, установленного в текущем сайта. Странно, что его нет в документации, ибо метод очень не плох. Код метода:
/**
 * @param float $size
 * @param int $precision
 * @return string
 */
public static function FormatSize($size, $precision = 2)
{
   static $a = array("b", "Kb", "Mb", "Gb", "Tb");
   $pos = 0;
   while($size >= 1024 && $pos < 4)
   {
      $size /= 1024;
      $pos++;
   }
   return round($size, $precision)." ".GetMessage("FILE_SIZE_".$a[$pos]);
}

 

 

Источник: http://dev.1c-bitrix.ru/community/webdev/user/125707/blog/7634/

Назад в раздел

Подписаться на новые материалы раздела:














CAPTCHA