PHP实现大数字格式化成K/M/B结尾的简短形式

这个功能在显示文章访问量中会用到,在GitHub的star中也会有,比如:

  • 232简短显示为232
  • 12556简短显示为12.6k(四舍五入)
  • 1232323简短显示为1.2m(四舍五入)
  • 32343533232简短显示为32.3b(四舍五入)

PHP实现代码:

/**
* 转换数字为简短形式
* @param $n int 要转换的数字
* @param $precision int 精度
*/
function shortenNumber($n, $precision = 1)
{
if ($n < 1e+3) {
$out = number_format($n);
} else if ($n < 1e+6) {
$out = number_format($n / 1e+3, $precision) . 'k';
} else if ($n < 1e+9) {
$out = number_format($n / 1e+6, $precision) . 'm';
} else if ($n < 1e+12) {
$out = number_format($n / 1e+9, $precision) . 'b';
}
return $out;
}

参考资料:

  1. Shorten long numbers to K/M/B?
以上是PHP实现大数字格式化成K/M/B结尾的简短形式的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>