在PHP中,字符串函数 number_format() 函数通过千位分组来格式化数字。
函数语法:
number_format ( float $number [, int $decimals = 0 ] ) : string
或
number_format ( float $number , int $decimals = 0 , string $dec_point = "." , string $thousands_sep = "," ) : string
函数参数说明:
参数 | 描述 |
---|---|
number | 必需。要格式化的数字。如果未设置其他参数,则数字会被格式化为不带小数点且以逗号(,)作为千位分隔符。 |
decimals | 可选。规定多少个小数。如果设置了该参数,则使用点号(.)作为小数点来格式化数字。 |
decimalpoint | 可选。规定用作小数点的字符串。 |
separator | 可选。规定用作千位分隔符的字符串。仅使用该参数的第一个字符。比如 "xxx" 仅输出 "x"。 注释:如果设置了该参数,那么所有其他参数都是必需的。 |
number_format() 函数通过千位分组来格式化数字,并返回格式化后的数字。该函数可以接受1个、2个或者4个参数(注意:不能是3个):
1. 如果只提供第一个参数,number的小数部分会被去掉,并且每个千位分隔符都是英文小写逗号","
2. 如果提供两个参数,number将保留小数点后的位数到你设定的值,并且每个千位分隔符都是英文小写逗号","
3. 如果提供了四个参数,number 将保留decimals个长度的小数部分, 小数点被替换为dec_point,千位分隔符替换为thousands_sep
举例1,设置一个参数,返回结果不保留小数:
<?php // 设置一个参数,返回结果不保留小数 $res = number_format(123456.789); echo $res;
以上代码输出如下:
123,457
举例2,设置两个参数,返回结果保留2位小数:
<?php // 设置两个参数,返回结果保留2位小数 $res = number_format(123456.789, 2); echo $res;
以上代码输出如下:
123,456.79
举例3,设置四个参数,返回结果保留2位小数,并设置小数点和千分位的替换符:
<?php // 设置四个参数,返回结果保留2位小数,并设置小数点和千分位的替换符 $res = number_format(123456.789, 2, '+', '-'); echo $res;
以上代码输出如下:
123-456+79