$num = 3014159265;
//第一种:利用round()对浮点数进行四舍五入
echo round($num,2); //3.14
//第二种:利用sprintf格式化字符串
$format_num = sprintf("%.2f",$num);
echo format_num; //3.14
//第三种:利用千位分组来格式化数字的函数number_format()
echo number_format($num, 2); //3.14
//或者如下
echo number_format($num, 2, '.', ''); //3.14
注:1.sprintf(format , arg1,arg++)
format:规定字符串以及如何格式化其中的变量。
可能的格式值:
- %% - 返回一个百分号 %
- %b - 二进制数
- %c - ASCII 值对应的字符
- %d - 包含正负号的十进制数(负数、0、正数)
- %e - 使用小写的科学计数法(例如 1.2e+2)
- %E - 使用大写的科学计数法(例如 1.2E+2)
- %u - 不包含正负号的十进制数(大于等于 0)
- %f - 浮点数(本地设置)
- %F - 浮点数(非本地设置)
- %g - 较短的 %e 和 %f
- %G - 较短的 %E 和 %f
- %o - 八进制数
- %s - 字符串
- %x - 十六进制数(小写字母)
- %X - 十六进制数(大写字母)
附加的格式值。必需放置在 % 和字母之间(例如 %.2f):
- + (在数字前面加上 + 或 - 来定义数字的正负性。默认情况下,只有负数才做标记,正数不做标记)
- ' (规定使用什么作为填充,默认是空格。它必须与宽度指定器一起使用。例如:%'x20s(使用 "x" 作为填充))
- - (左调整变量值)
- [0-9] (规定变量值的最小宽度)
- .[0-9] (规定小数位数或最大字符串长度)
2.number_format(number,decimals,decimalpoint,separator)
参数 | 描述 |
---|---|
number | 必需。要格式化的数字。 如果未设置其他参数,则数字会被格式化为不带小数点且以逗号(,)作为千位分隔符。 |
decimals | 可选。规定多少个小数。如果设置了该参数,则使用点号(.)作为小数点来格式化数字。 |
decimalpoint | 可选。规定用作小数点的字符串。 |
separator | 可选。规定用作千位分隔符的字符串。仅使用该参数的第一个字符。比如 "xxx" 仅输出 "x"。 注释:如果设置了该参数,那么所有其他参数都是必需的。 |