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

Как сделать суффиксы (K, M, B) для больших чисел?

Как сделать так, чтобы число 12000 -- было 12К, а число 1700 -- было 1,7К?
  • Вопрос задан
  • 375 просмотров
Подписаться 3 Простой 2 комментария
Решения вопроса 1
@Kerm
function number_name($number)
{
    $count = array("", "k", "M", "G", "T");

    $i = 0;
    while (abs($number) > 1000) {
        $number /= 1000;
        $i++;
    }

    return $number.$count[$i];
}

echo number_name(5)."\n";
echo number_name(5000)."\n";
echo number_name(-5000)."\n";
echo number_name(5000000)."\n";
echo number_name(5000000000)."\n";
echo number_name(5000000000000);


5
5k
-5k
5M
5G
5T
Ответ написан
Ответы на вопрос 1
@DeboshiR
Свободу разработчикам!!!
Можно проверять сколько нолей в конце числа и какой длины само число.
если число.длина > 3 то:
    если число.заканчивается_на_три_ноля то:
        число = число.заменить_3_ноля;
        выход;
    если число.заканчивается_на_2_ноля то:
        число = число.заменить_2_ноля;
        выход;

А вообще там точно будут только круглые числа? Разве не придется сокращать 12563 до 12К?
Ответ написан
Ваш ответ на вопрос

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

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