在 PHP 中,isnum 函數被用來判斷給定的字符串是否只包含數字。
舉個例子:
$str1 = "123456"; if(isnum($str1)){ echo "字符串 $str1 只包含數字"; }else{ echo "字符串 $str1 不只包含數字"; } // 輸出:字符串 123456 只包含數字
如上所示,我們可以使用 isnum 函數來判斷字符串是否只包含數字。
isnum 函數的定義如下:
function isnum($str){ return preg_match("/^[0-9]+$/",$str); }
該函數使用了正則表達式來判斷字符串是否只包含數字。"^"表示字符串開頭,"$"表示字符串結尾,"[0-9]"表示數字,"+"表示匹配一次或多次。
值得注意的是,isnum 函數只能判斷字符串是否只包含數字,而不能判斷字符串是否為數字。
舉個例子:
$str2 = "123A"; if(isnum($str2)){ echo "字符串 $str2 只包含數字"; }else{ echo "字符串 $str2 不只包含數字"; } // 輸出:字符串 123A 不只包含數字
如上所示,雖然字符串 $str2 中也包含數字"123",但因為其中還含有字母"A",所以 isnum 函數判斷為不只包含數字。
所以,如果要判斷字符串是否為數字,需要使用 is_numeric 函數。
舉個例子:
$str3 = "123"; if(is_numeric($str3)){ echo "字符串 $str3 是數字"; }else{ echo "字符串 $str3 不是數字"; } // 輸出:字符串 123 是數字
如上所示,使用 is_numeric 函數判斷字符串是否為數字,只要不含有除數字以外的字符就判斷為數字。
綜上所述,isnum 函數適用于判斷字符串是否只包含數字。如果要判斷字符串是否為數字,則需要使用 is_numeric 函數。