首页 >后端开发 >php教程 >php通过千位分组来格式化数字的函数number_format()

php通过千位分组来格式化数字的函数number_format()

黄舟
黄舟原创
2017-11-02 13:45:431920浏览

实例

格式化数字:

<?php
echo number_format("1000000")."<br>";
echo number_format("1000000",2)."<br>";
echo number_format("1000000",2,",",".");
?>

定义和用法

number_format() 函数通过千位分组来格式化数字。

注释:该函数支持一个、两个或四个参数(不是三个)。

语法

number_format(number,decimals,decimalpoint,separator)

参数                      描述

number                必需。要格式化的数字。如果未设置其他参数,则数字会被格式化为不带小数点且以逗号(,)作为千位分隔符。    

decimals               可选。规定多少个小数。如果设置了该参数,则使用点号(.)作为小数点来格式化数字。    

decimalpoint        可选。规定用作小数点的字符串。    

separator              可选。规定用作千位分隔符的字符串。仅使用该参数的第一个字符。比如 "xxx" 仅输出 "x"。
                              注释:如果设置了该参数,那么所有其他参数都是必需的。    

技术细节

返回值:          返回已格式化的数字。    

PHP 版本:       4+    

更新日志:         自 PHP 5.4 起,该函数在参数 decimalpoint 和 separator 中支持多字节。在之前的版本中,值使用每个分隔符的第一个字节。    

更多实例

实例 1

您想要返回一个价格:一个参数将对数字进行舍入(格式化为不带小数位形式),两个参数将给出您想要的结果:

<?php
$num = 1999.9;
$formattedNum = number_format($num)."<br>";
echo $formattedNum;
$formattedNum = number_format($num, 2);
echo $formattedNum;
?>

有意思的number_format 

number_format(number,decimals,decimalpoint,separator)

有四个参数, 
第一个和第二个参数是必须的,第三个和第四个是可选项。但实际测试中第三个和第四个这两个参数必须同时存在,也就是要么都设置,要么都不设置。 
没有设置第三个和第四个参数: 

Number_format(13526, 2); echo 13,526.00;

如果你将这处理后的数字去累加,则只会得到一个13!。 
设置了第三个和第四个参数 

Number_format(23125, 2, ‘.&#39;,&#39;&#39;); echo 23125.00;

这时再对这处理后的数字进行运算的话则会正确执行! 
该函数的第三个参数表示 ‘小数点'位置用什么来表示,可以默认 . ,也可以设置成‘,'等其他符号。Ps:但我相信没人会这么干。 
第四个则表示每隔 千位时用什么来分割数字。如果没什么特殊要求,又要进行运算的话最好设置为空。

以上是php通过千位分组来格式化数字的函数number_format() 的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn