php 带逗号千位符数字的处理方法_php技巧

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

复制代码 代码如下:

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

时间: 2024-11-08 18:25:20

php 带逗号千位符数字的处理方法_php技巧的相关文章

php随机生成数字字母组合的方法_php技巧

本文实例讲述了php随机生成数字字母组合的方法.分享给大家供大家参考.具体如下: 直接上代码: 复制代码 代码如下: function getRandomString($len, $chars=null) {     if (is_null($chars)){         $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";     }      mt_srand(10000000*(d

php带抄送和密件抄送的邮件发送方法_php技巧

本文实例讲述了php带抄送和密件抄送的邮件发送方法.分享给大家供大家参考.具体分析如下: 程序中用到了php的mail函数,该函数定义如下: bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] ) 如果邮件发送成功返回True,否则返回False <html> <head> <ti

php使用递归函数实现数字累加的方法_php技巧

本文实例讲述了php使用递归函数实现数字累加的方法.分享给大家供大家参考.具体实现方法如下: <?php function summation ($count) { if ($count != 0) : return $count + summation($count-1); endif; } $sum = summation(10); print "Summation = $sum"; ?> 希望本文所述对大家的php程序设计有所帮助. 以上是小编为您精心准备的的内容,在

php恢复数组的key为数字序列的方法_php技巧

本文实例讲述了php恢复数组的key为数字序列的方法.分享给大家供大家参考.具体分析如下: 这里实现php把数组的key值恢复成类似于0,1,2,3,4,5...这样的数字序列 function restore_array($arr){ if (!is_array($arr)){ return $arr; } $c = 0; $new = array(); while (list($key, $value) = each($arr)){ if (is_array($value)){ $new[$

PHP实现将科学计数法转换为原始数字字符串的方法_php技巧

本文实例讲述了PHP实现将科学计数法转换为原始数字字符串的方法,分享给大家供大家参考. 具体实现代码如下: 复制代码 代码如下: function NumToStr($num){     if (stripos($num,'e')===false) return $num;     $num = trim(preg_replace('/[=\'"]/','',$num,1),'"');//出现科学计数法,还原成字符串     $result = "";     wh

php获取URL中带#号等特殊符号参数的解决方法_php技巧

例如下面的PHP代码: 复制代码 代码如下: <?php echo $_GET['key']; ?> 当url为http://test.com/c.php?key=999时,正常输出:999 当url为http://test.com/c.php?key=9#888时,只能输出:9 而我想要获得的是9#888,那要怎么办呢?只能在把9#888传递给key的这个环节想办法. 我是用JS中的escape函数编码后传递解决了这个问题,需要的朋友可以参考一下. 复制代码 代码如下: <input

JS实现的4种数字千位符格式化方法分享

 这篇文章主要介绍了JS实现的4种数字千位符格式化方法分享,本文给出了4种千分位格式化方法并对它们的性能做了比较,需要的朋友可以参考下     所谓的数字千分位形式,即从个位数起,每三位之间加一个逗号.例如"10,000".针对这个需求,我起初写了这样一个函数: 代码如下: // 方法一 function toThousands(num) { var result = [ ], counter = 0; num = (num || 0).toString().split(''); fo

java使用正则表达为数字添加千位符的简单方法_java

Java支持的正则表达式很完善,利用零宽断言可以用一句话为整数添加千位符. 复制代码 代码如下: "1234567890".replaceAll("(?<=\\d)(?=(?:\\d{3})+$)", ",");// => 1,234,567,890

JS实现的4种数字千位符格式化方法分享_javascript技巧

所谓的数字千分位形式,即从个位数起,每三位之间加一个逗号.例如"10,000".针对这个需求,我起初写了这样一个函数: 复制代码 代码如下: // 方法一 function toThousands(num) {     var result = [ ], counter = 0;     num = (num || 0).toString().split('');     for (var i = num.length - 1; i >= 0; i--) {         co