首页 > 编程技术 > php

php FILTER_VALIDATE_FLOAT 浮点数验证

发布时间:2016-11-25 16:49

filter_validate_float 过滤器把值作为浮点数来验证。
*/
$var=12.3;

var_dump(filter_var($var, filter_validate_float));

//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+)?
更多详细内容请查看:php教程er/php-function/35065.htm">http://www.111cn.net/phper/php-function/35065.htm
在这里给大家介绍一种方法,它可以计算出以n成倍增加最接近float值的int值。说的不是很清楚,那就请大家直接看代码吧!


公式:round($number/n)*n
<?php
$number=1234.30;
$rounded = round($number / 3) * 3;
echo($rounded);
?>

结果:1233

1233可以整除3,且是整除3最接近1234.30。

 

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


01.<?php  
02.echo(round(3.1415927,2)."<br/>");  
03.echo(round(1092,-2));  
04.?>  
<?php
echo(round(3.1415927,2)."<br/>");
echo(round(1092,-2));
?> 

结果:

3.14
1100

 

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

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

 

再顺便给大家介绍一个函数floor()。


01.<?php  
02.echo floor(4.3);   // 4  
03.echo floor(9.999); // 9  
04.?>  
<?php
echo floor(4.3);   // 4
echo floor(9.999); // 9
?> 

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

*/
?>

filter_sanitize_number_int 过滤器删除数字中所有非法的字符。

该过滤器允许所有数字以及 +-。
*/

$number="5-2+3pp";

var_dump(filter_var($number, filter_sanitize_number_int));

/*
验证数字:^[0-9]*$
验证n位的数字:^d{n}$
验证至少n位数字:^d{n,}$
验证m-n位的数字:^d{m,n}$
验证零和非零开头的数字:^(0|[1-9][0-9]*)$
验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$
验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$
验证非零的正整数:^+?[1-9][0-9]*$
验证非零的负整数:^-[1-9][0-9]*$
验证非负整数(正整数 + 0)  ^d+$
验证非正整数(负整数 + 0)  ^((-d+)|(0+))$
验证长度为3的字符:^.{3}$

更多详细内容请查看:php教程er/php-function/35065.htm">http://www.111cn.net/phper/php-function/35065.htm
*/

php教程 filter 简介

php 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤。

安装

filter 函数是 php 核心的组成部分。无需安装即可使用这些函数。

php filter 函数

php:指示支持该函数的最早的 php 版本。

函数 描述 php
filter_has_var() 检查是否存在指定输入类型的变量。 5
filter_id() 返回指定过滤器的 id 号。 5
filter_input() 从脚本外部获取输入,并进行过滤。 5
filter_input_array() 从脚本外部获取多项输入,并进行过滤。 5
filter_list() 返回包含所有得到支持的过滤器的一个数组。 5
filter_var_array() 获取多项变量,并进行过滤。 5
filter_var() 获取一个变量,并进行过滤。 5

php filters

id 名称 描述
filter_callback 调用用户自定义函数来过滤数据。
filter_sanitize_string 去除标签,去除或编码特殊字符。
filter_sanitize_stripped "string" 过滤器的别名。
filter_sanitize_encoded url-encode 字符串,去除或编码特殊字符。
filter_sanitize_special_chars html 转义字符 '"<>& 以及 ascii 值小于 32 的字符。
filter_sanitize_email 删除所有字符,除了字母、数字以及 !#$%&'*+-/=?^_`{|}~@.[]
filter_sanitize_url 删除所有字符,除了字母、数字以及 $-_.+!*'(),{}|^~[]`<>#%";/?:@&=
filter_sanitize_number_int 删除所有字符,除了数字和 +-
filter_sanitize_number_float 删除所有字符,除了数字、+- 以及 .,ee。
filter_sanitize_magic_quotes 应用 addslashes()。
filter_unsafe_raw 不进行任何过滤,去除或编码特殊字符。
filter_validate_int 在指定的范围以整数验证值。
filter_validate_boolean 如果是 "1", "true", "on" 以及 "yes",则返回 true,如果是 "0", "false", "off", "no" 以及 "",则返回 false。否则返回 null。
filter_validate_float 以浮点数验证值。
filter_validate_regexp 根据 regexp,兼容 perl 的正则表达式来验证值。
filter_validate_url 把值作为 url 来验证。
filter_validate_email 把值作为 e-mail 来验证。
filter_validate_ip 把值作为 ip 地址来验证。

mktime    = mktime($hours,minute,seconds,month,day,years)

$start_time = mktime(0,0,0,01,09,2010);            //开始时间

$end_time   = mktime(0,0,0,02,09,2010);            //结束时间

$times      = $end_time-$start_time;               //

开始与结束之间相差多少秒6    

$now_time   = $times/(24*3600);                    //得出一共有多少

 

mktime() 函数返回一个日期的 unix 时间戳。

参数总是表示 gmt 日期,因此 is_dst 对结果没有影响。

参数可以从右到左依次空着,空着的参数会被设为相应的当前 gmt 值。

语法
mktime(hour,minute,second,month,day,year,is_dst)参数 描述
hour 可选。规定小时。
minute 可选。规定分钟。
second 可选。规定秒。
month 可选。规定用数字表示的月。
day 可选。规定天。
year 可选。规定年。在某些系统上,合法值介于 1901 - 2038 之间。不过在 php教程 5 中已经不存在这个限制了。
is_dst 可选。如果时间在日光节约时间(dst)期间,则设置为1,否则设置为0,若未知,则设置为-1。

自 5.1.0 起,is_dst 参数被废弃。因此应该使用新的时区处理特性。
 

php教程 date()转换mktime()成可读日期

date/time 函数允许您提取并格式化服务器上的日期和时间

mktime() 函数返回一个日期的 unix 时间戳。

参数总是表示 gmt 日期,因此 is_dst 对结果没有影响。

参数可以从右到左依次空着,空着的参数会被设为相应的当前 gmt 值。

语法
mktime(hour,minute,second,month,day,year,is_dst)

 

$s =1294628667;
echo date("y-m-d h:i:s",$s);

标签:[!--infotagslink--]

您可能感兴趣的文章: