将数字格式设置为缩写数字

2024-04-26

我有一个数据库,其中有一列包含数字格式的值,例如:

5,000 for 5k 

86,600 for 86.6k

4,100,000 for 4.1m

在浏览器中显示时,它应该显示为 5000 的 5k,86,600 的 86.6k 等。我需要 php 中的代码。如果有任何内置函数可以执行此操作,请提及。


如果它们是数字,则可以直接使用此函数。

function formatValue($size, $precision = 1)
{
    static $suffixes = array('', 'k', 'm');
    $base = log($size) / log(1000);

    return round(pow(1000, $base - floor($base)), $precision) . $suffixes[floor($base)];
}

如果您没有它们作为数字,请使用PHP:取消货币格式 https://stackoverflow.com/questions/5139793/php-unformat-money

对于您的特殊情况,您可以使用一些肮脏的黑客,但如果您有更多特殊情况,我不推荐它。

function formatValue($size, $precision = 1)
{
    static $suffixes = array('', 'k', 'm');
    $base = log($size) / log(1000);

    if ($base >= 5/3 && $base < 2) {
        return round(pow(1000, $base - floor($base)) / 100, $precision) . 'lakh';
    }

    return round(pow(1000, $base - floor($base)), $precision) . $suffixes[floor($base)];
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将数字格式设置为缩写数字 的相关文章

随机推荐