number_format
(PHP 4, PHP 5, PHP 7)
number_format — 以千位分隔符方式格式化一个数字
说明
number_format (
float
$number
[,
int $decimals
= 0 ] ) :
string
number_format (
float
$number
,
int $decimals
= 0 ,
string $dec_point
= "." ,
string $thousands_sep
= "," ) :
string
本函数可以接受1个、2个或者4个参数(注意:不能是3个):
如果只提供第一个参数,number
的小数部分会被去掉 并且每个千位分隔符都是英文小写逗号","
如果提供两个参数,number
将保留小数点后的位数到你设定的值,其余同楼上
如果提供了四个参数,number
将保留decimals
个长度的小数部分, 小数点被替换为dec_point
,千位分隔符替换为thousands_sep
参数
-
number
-
你要格式化的数字
-
decimals
-
要保留的小数位数
-
dec_point
-
指定小数点显示的字符
-
thousands_sep
-
指定千位分隔符显示的字符
返回值
格式化以后的 number
.
更新日志
版本 | 说明 |
---|---|
5.4.0 | This function now supports multiple bytes in dec_point and thousands_sep . Only the first byte of each separator was used in older versions. |
范例
Example #1 number_format() Example
For instance, French notation usually use two decimals, comma (',') as decimal separator, and space (' ') as thousand separator. The following example demonstrates various way to format a number:
<?php
$number = 1234.56;
// english notation (default)
$english_format_number = number_format($number);
// 1,235
// French notation
$nombre_format_francais = number_format($number, 2, ',', ' ');
// 1 234,56
$number = 1234.5678;
// english notation without thousands separator
$english_format_number = number_format($number, 2, '.', '');
// 1234.57
?>
更新日志
版本 | 说明 |
---|---|
7.2.0 | number_format() 现在无法返回 -0,之前可能返回 -0,因为 number 可能会是 -0.01。 |
参见
- money_format() - 将数字格式化成货币字符串
- sprintf() - Return a formatted string
- printf() - 输出格式化字符串
- sscanf() - 根据指定格式解析输入的字符