欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php FILTER_VALIDATE_FLOAT 浮点数验证

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


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

结果:1233

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

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


01.02.echo(round(3.1415927,2)."
");
03.echo(round(1092,-2));
04.?>
echo(round(3.1415927,2)."
");
echo(round(1092,-2));
?>

结果:

3.14
1100

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

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

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


01.02.echo floor(4.3); // 4
03.echo floor(9.999); // 9
04.?>
echo floor(4.3); // 4
echo floor(9.999); // 9
?>

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

*/
?>