PHP函数运用之检查一个值是不是有限值、无限值或非数值

来自:互联网
时间:2021-08-23
阅读:

本文的主要内容是:检查一个值是不是有限值、无限值或非数值。

一:检查一个值是否为有限值

可以使用is_finite($value)函数来判断一个值value是否为有限值。如果指定的值是有限值,该函数返回 true 或1;否则,它将返回 false/nothing。如果值是本机平台上 PHP 浮点数所允许范围内,则该值是有限值。

我们来具体看看下面一个例子:

<?php
header("content-type:text/html;charset=utf-8");
function isFinite($value){
	if(is_finite($value)){
		echo $value."是有限值。<br>";
	}else{
		echo $value."不是有限值。<br>";
	}
}
isFinite(2);
isFinite(log(0));
?>

log(0)的值为-INF,INF指的是无穷大,而-INF是负无穷大;因此log(0)不是一个有限值。因此输出结果:

PHP函数运用之检查一个值是不是有限值、无限值或非数值

二:检查一个值是否为无限值

可以使用is_infinite($value)函数来判断一个值value是否为无限值。如果指定的值是有限值,该函数返回 TRUE 或1;否则,它将返回 FALSE(没有任何输出)。如果值是本机平台上 PHP 浮点数所允许范围内,则该值是无限值。

我们来具体看看下面一个例子:

<?php
header("content-type:text/html;charset=utf-8");
function isInfinite($value){
	if(is_infinite($value)){
		echo $value."是无限值。<br>";
	}else{
		echo $value."不是无限值。<br>";
	}
}
isInfinite(2);
isInfinite(log(0));
?>

输出结果:

PHP函数运用之检查一个值是不是有限值、无限值或非数值

三:检查一个值是否为非数值

可以使用is_nan($value)函数来判断一个值是否为非数值。如果指定的值是非数值,该函数返回 true 或1;否则,它将返回 false/nothing。

我们来具体看看下面一个例子:

<?php
header("content-type:text/html;charset=utf-8");
function isNan($value){
	if(is_nan($value)){
		echo "是非数值。<br>";
	}else{
		echo "不是非数值。<br>";
	}
}
isNan(2);
isNan(NAN);
isNan(acos(1.01));
?>

NaN(Not a Number,非数)是计算机科学中数值数据类型的一类值,表示未定义或不可表示的值。常在浮点数运算中使用。我们可以使用is_nan()函数来检查一个值是不是NaN。

而在上例子,acos(1.01)会返回NaN,因此acos(1.01)的计算结果是为非数值。因此输出结果:

PHP函数运用之检查一个值是不是有限值、无限值或非数值

返回顶部
顶部