9

14120000 などの大きな数値を PHP で 1412 万の形式に変換する簡単な方法はありますか?

私は number_format を見てきましたが、この機能を提供していないようです。桁を区切るために sub_str についても考えましたが、もっと良い方法があるのではないかと思いましたか?

4

1 に答える 1

47

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

?>
于 2012-04-19T04:40:49.753 に答える