将数字转换为 xx.xx 百万格式?

2022-01-15 00:00:00 format numbers php

有没有一种简单的方法来转换一个高数字,例如14120000用PHP转成1412万格式?

Is there a simple way to convert a high number e.g. 14120000 into 14.12 million format with PHP?

我一直在看 number_format 但它似乎没有提供这个功能,也想过 sub_str 将数字分开,但认为可能有更好的方法?

I've been looking at number_format but it doesn't seem to offer this function, also thought about sub_str to separate the digits out, but thought there might be a better way?

推荐答案

试试这个,https://php.net/manual/en/function.number-format.php#89888:

<?php 
    function nice_number($n) {
        // first strip any formatting;
        $n = (0+str_replace(",", "", $n));

        // is this a number?
        if (!is_numeric($n)) return false;

        // now filter it;
        if ($n > 1000000000000) return round(($n/1000000000000), 2).' trillion';
        elseif ($n > 1000000000) return round(($n/1000000000), 2).' billion';
        elseif ($n > 1000000) return round(($n/1000000), 2).' million';
        elseif ($n > 1000) return round(($n/1000), 2).' thousand';

        return number_format($n);
    }

echo nice_number('14120000'); //14.12 million

?>

相关文章