php(带逗号千位符)数字的处理

2011年09月15日 16:46 by:lao8

通常用number_format(); 来格式化数字,默认情况千位符是用逗号间隔的,比如:

  1. echo number_format("10000.01231", 2); //取小数点后2位,输出的结果为:10,000.01  千位默认是用逗号间隔。

如果我们后台验证从客户端获取来的这种格式的数字就有点费劲了。

老修通常用 filter_input(INPUT_POST,"price",FILTER_VALIDATE_FLOAT) 来验证价格,如果是带逗号的千位符就会获取不到。

所以在确认输入是数字的时候就要先过滤掉所有的千位符,然后再验证。

其实很少有人会带千位符输入数字的,除非是复制的或者是把原来输出的值再提交。

在输出的时候我们就可以尽量少用带有千位符的数字格式, 输出可以这样写:format_number("10000.01231",2,".","");  //这样输出的就是10000.01