你值得信赖的源码站!

php FILTER_VALIDATE_FLOAT 浮点数验证

filter_validate_float 过滤器把值作为浮点数来验证,实例代码如下:

  1. $var=12.3; 
  2.  
  3. var_dump(filter_var($var, filter_validate_float)); 
  4.  
  5. //float(12.3) 

非负浮点数(正浮点数 + 0):^d+(.d+)?$

正浮点数   ^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$

非正浮点数(负浮点数 + 0) ^((-d+(.d+)?)|(0+(.0+)?))$

负浮点数  ^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$

浮点数  ^(-?d+)(.d+)?

在这里给大家介绍一种方法,它可以计算出以n成倍增加最接近float值的int值,说的不是很清楚,那就请大家直接看代码吧.

公式:round($number/n)*n

  1. <?php 
  2. $number=1234.30; 
  3. $rounded = round($number / 3) * 3; 
  4. echo($rounded); 
  5. ?> 
  6. //结果:1233 
  7. //1233可以整除3,且是整除3最接近1234.30。 

这里提到round(),就顺便再介绍下它的常规用法,详细的日后将给予说明.

  1. <?php    
  2. echo(round(3.1415927,2)."<br/>");    
  3. echo(round(1092,-2));    
  4. ?>    
  5. <?php 
  6. echo(round(3.1415927,2)."<br/>"); 
  7. echo(round(1092,-2)); 
  8. ?>  
  9. //结果: 
  10. 3.14 
  11. 1100 

round(3.1415927,2):保留2个小数,进行四舍五入.

round(1092,-2):将十位数四舍五入.

再顺便给大家介绍一个函数floor(),实例代码如下:

  1. <?php    
  2. echo floor(4.3);   // 4    
  3. echo floor(9.999); // 9    
  4. ?>    
  5. <?php 
  6. echo floor(4.3);   // 4 
  7. echo floor(9.999); // 9 
  8. //开源代码phpfensi.com 
  9. ?>  

返回不大于value的一个整数,将value的小数部分舍弃,这里需要注意下,虽然value被舍弃了小数部分,但是floor(value)得出的结果仍然是float.

赞(0) 本模板价: 打赏
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《php FILTER_VALIDATE_FLOAT 浮点数验证》
文章链接:https://www.adminn.cn/888.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏