Этот вопрос закрыт для ответов, так как повторяет вопрос Как сделать тысячные цифры, например, если сумма 4774, то чтобы писалась 4K?
bazilio2010
@bazilio2010
Мужчина

В php есть функция преобразования 1000 в k?

Написал функцию, но ей еще нужно прописать исключение для чисел больше миллиона, а может есть, что то встроенное, а я велосипед изобретаю?
function thousandKilo($count) {
   if($count < 1000) {
     return $count;
  }
  else {
    return  str_replace(",",".",(round($count,-2)/1000)) .'K';  
  }
}
  • Вопрос задан
  • 173 просмотра
Ответы на вопрос 2
vgorodilov
@vgorodilov
function format($size){
  $filesizename = array( " Bytes", " KB", " MB", " GB", " TB", " PB", " EB", " ZB", " YB" );
  return $size ?
  $format = round($size/pow(1024, ($i = floor(log($size, 1024)))), 2) . $filesizename[$i] : '0 ' . $filesizename[0];
     return format;
    }
Ответ написан
@Vitsliputsli
Для тех, кто любит рекурсию или не любит логарифмы такой вариант:
function format($size,$prefix=0){
	if (is_numeric($size) && $size>=1000 && $prefix<8) {
		$size = format(floor($size/1000),$prefix+1);
		return $size;
	} else {
		$prefixName = ["B","KB","MB","GB","TB","PB","EB","ZB","YB"];
		return $size . $prefixName[$prefix];
	}
}
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы