将价格保留两位小数比如12元需要表示为¥12.00,这时就需要使用number_format函数,使用方法为number_format(12,2),如果需要四舍五入,可以使用round函数配合。
number_format
格式化数字字串。
语法:stringnumber_format(floatnumber,int[decimals],string[dec_point],string[thousands_sep]);
传回值:字串
函式种类:数学运算
内容说明
本函式用来将浮点参数number格式化。若没加参数decimals则传回的字串只要整数部份,加了此参数才依参数指定的小数点位数传回。参 数dec_point表示小数点的表示方式方法,内定值是”.”,若需要转换成其它的小数点就可以在这个参数改掉。参 数thousands_sep为整数部份每三位的分隔符号,内定值是”,”。本函式最特别的地方就是参数数目,最少要有一个,也就是欲格式化的字 串;也可以有二个或者四个参数,但不能用三个参数。值得注意的是指定小数点的位数之后的数字直接舍弃,没有四舍五入的情形。
echo number_format("1000000");
echo number_format("1000000",2);
echo number_format("1000000",2,",",".");
echo number_format("1000000",2,"*",".");
echo number_format("1000000",2,".","");
?>
输出:
1,000,000
1,000,000.00
1.000.000,00
1.000.000*00
1000000.00
number_format(number,decimals,decimalpoint,separator)
有四个参数,
第一个和第二个参数是必须的,第三个和第四个是可选项。但实际测试中第三个和第四个这两个参数必须同时存在,也就是要么都设置,要么都不设置。
没有设置第三个和第四个参数:
Number_format(13526, 2); echo 13,526.00;
如果你将这处理后的数字去累加,则只会得到一个13!。
设置了第三个和第四个参数
Number_format(23125, 2, '.',''); echo 23125.00;
这时再对这处理后的数字进行运算的话则会正确执行!
该函数的第三个参数表示 ‘小数点'位置用什么来表示,可以默认 . ,也可以设置成‘,'等其他符号。Ps:但我相信没人会这么干。
第四个则表示每隔 千位时用什么来分割数字。如果没什么特殊要求,又要进行运算的话最好设置为空。