php用逗号格式化数字

Posted amoswang01

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php用逗号格式化数字相关的知识,希望对你有一定的参考价值。

今日工作需要格式化数字显示当前商品价格,比如2335.32,需要格式化为2,335.32这样显示。我写了一个函数。总感觉这么简单的功能,但是却需要30多行代码来完成。

 

<?php
/****
* @author Amos Wang
* @param $number
* @return mixed
*/
function numberFormat($number)

if(!is_numeric($number))
return $number; // 只处理数字

list($integer,$decimal) = explode(‘.‘,$number);
$number_temp = ""; // 临时计数
$len = strlen($integer);
$sublen = 3; // 每隔几位数加逗号

//处理整数部分
$i=1;
while(true)
$pos = $i * $sublen;
$join = empty($number_temp) ? "" : ","; // 连接符
$number_temp = substr($integer,(0-$pos),$sublen).$join.$number_temp;

if(($pos + $sublen) > $len)
$number_temp = substr($integer,0,($len - $pos)).$join.$number_temp;
break;

$i++;

//处理小数部分
if(!empty($decimal))
$number_temp = !empty($number_temp) ? $number_temp.".".$decimal : "0.".$decimal;

return $number_temp;

$result = numberFormat(1234567.5564);
print_r($result);
?>

//结果输出1,234,567.5564

以上是关于php用逗号格式化数字的主要内容,如果未能解决你的问题,请参考以下文章

php实现数字格式化,数字每三位加逗号的功能函数

PHP数字格式不带逗号

用逗号格式化数字

c ++:用逗号格式化数字?

Highcharts:用逗号格式化所有数字?

用逗号格式化数字以在 Python 中分隔千位