PHP函式運用之檢查一個值是不是有限值、無限值或非數值

tony0087發表於2021-09-11
在之前的文章《》中,我們瞭解一下延遲執行當前指令碼到指定的時間(多少秒後)的方法。這次我們繼續PHP函式的學習,介紹一下給定一個值,怎麼檢查它是不是有限值、無限值或非數值的方法,感興趣的朋友可以學習瞭解一下~

本文的主要內容是:檢查一個值是不是有限值、無限值或非數值。

一:檢查一個值是否為有限值

可以使用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)不是一個有限值。因此輸出結果:

1.png

二:檢查一個值是否為無限值

可以使用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));
?>

輸出結果:

2.png

三:檢查一個值是否為非數值

可以使用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)的計算結果是為非數值。因此輸出結果:

3.png

好了就說到這裡了,有其他想知道的,可以點選這個哦。→ →

以上就是PHP函式運用之檢查一個值是不是有限值、無限值或非數值的詳細內容,更多請關注php中文網其它相關文章!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1747/viewspace-2827388/,如需轉載,請註明出處,否則將追究法律責任。

相關文章