This article mainly introduces the function of adding commas every three digits in PHP. Friends who want to know how to add commas every three digits can refer to it. I hope to be helpful.
php implements digital formatting, a function that adds commas to every three digits of a number. The specific code is as follows:
function num_format($num){ if(!is_numeric($num)){ return false; } $num = explode('.',$num);//把整数和小数分开 $rl = $num[1];//小数部分的值 $j = strlen($num[0]) % 3;//整数有多少位 $sl = substr($num[0], 0, $j);//前面不满三位的数取出来 $sr = substr($num[0], $j);//后面的满三位的数取出来 $i = 0; while($i <= strlen($sr)){ $rvalue = $rvalue.','.substr($sr, $i, 3);//三位三位取出再合并,按逗号隔开 $i = $i + 3; } $rvalue = $sl.$rvalue; $rvalue = substr($rvalue,0,strlen($rvalue)-1);//去掉最后一个逗号 $rvalue = explode(',',$rvalue);//分解成数组 if($rvalue[0]==0){ array_shift($rvalue);//如果第一个元素为0,删除第一个元素 } $rv = $rvalue[0];//前面不满三位的数 for($i = 1; $i < count($rvalue); $i++){ $rv = $rv.','.$rvalue[$i]; } if(!empty($rl)){ $rvalue = $rv.'.'.$rl;//小数不为空,整数和小数合并 }else{ $rvalue = $rv;//小数为空,只有整数 } return $rvalue; }
In addition, you can Use the function that comes with the system string number_format (float number [, int decimals [, string dec_point, string thousands_sep]] ):
Example:
echo number_format('169856420');
The output will be: 169,856,420
echo number_format('1000000',2);
The output result will be: 1,000,000.00
echo number_format('1000000',2,',','.');
The output result will be: 1.000.000,00
Related recommendations:
php Function usage method and function definition method_ PHP tutorial
PHP encapsulated functions are not used properly and always prompt parameter issues
php Implement explore() function sample code
The above is the detailed content of PHP function encapsulation for adding commas to every three digits. For more information, please follow other related articles on the PHP Chinese website!