PHP实现大数字格式化成K/M/B结尾的简短形式
这个功能在显示文章访问量中会用到,在GitHub的star中也会有,比如:
- 232简短显示为232
- 12556简短显示为12.6k(四舍五入)
- 1232323简短显示为1.2m(四舍五入)
- 32343533232简短显示为32.3b(四舍五入)
PHP实现代码:
/**
*转换数字为简短形式
*@param$nint要转换的数字
*@param$precisionint精度
*/
functionshortenNumber($n,$precision=1)
{
if($n<1e+3){
$out=number_format($n);
}elseif($n<1e+6){
$out=number_format($n/1e+3,$precision).'k';
}elseif($n<1e+9){
$out=number_format($n/1e+6,$precision).'m';
}elseif($n<1e+12){
$out=number_format($n/1e+9,$precision).'b';
}
return$out;
}
参考资料:
- ShortenlongnumberstoK/M/B?