Функция сокращения на PHP большого числа в короткий формат. Вместо тысячи выводим 1К, вместо миллиона выводим 1М, вместо миллиарда выводим 1Г.
get_number_with_letters($n)
{
$n = (float)$n;
if ($n <= 9999 and $n >= -9999) {
$format = number_format($n, 0, '.', '');
} else if($n <= 999999 and $n >= -999999){
$format = number_format($n/1e3, 2, '.', '') + 0 .'К';
} else if($n <= 999999999 and $n >= -999999999){
$format = number_format($n/1e6, 2, '.', '') + 0 .'М';
} else {
$format = number_format($n/1e9, 2, '.', '') + 0 .'Г';
}
return $format;
}
{
$n = (float)$n;
if ($n <= 9999 and $n >= -9999) {
$format = number_format($n, 0, '.', '');
} else if($n <= 999999 and $n >= -999999){
$format = number_format($n/1e3, 2, '.', '') + 0 .'К';
} else if($n <= 999999999 and $n >= -999999999){
$format = number_format($n/1e6, 2, '.', '') + 0 .'М';
} else {
$format = number_format($n/1e9, 2, '.', '') + 0 .'Г';
}
return $format;
}
В примере можно заметить, что к каждому значению добавляется ноль (+ 0). Это сделано для того, чтобы исключить знаки после запятой, если число не имеет дробных частей.