兩種方法:1、用intval()將字串轉為整數值,再用「==」運算子判斷整數值是否和原字串相等,語法「intval($str)= =$str”,相等則是整數。 2.用is_numeric()和strpos()判斷字串是否為不包含小數點的數字字串,語法“!is_numeric($str)||strpos($str,".")!==false”,傳回false則是整數,反之不是。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
php判斷字串是不是整數的兩種方法
方法1:使用intval()函數和「==」運算子來判斷
使用intval()函數將字串轉為整數值
使用「==」運算子判斷整數值是否和原始字串相等
<?php header("Content-type:text/html;charset=utf-8"); function f($str){ $result = intval($str); if($result==$str){ echo "$str 字符串是整数<br><br>"; } else{ echo "$str 字符串不是整数<br><br>" ; } } f("a678"); f("678"); f("3.14"); ?>
方法2:使用is_numeric()函數和strpos()函數來判斷
用is_numeric()函數判斷是否為數字或數字字串(整數和浮點數)
#用strpos()判斷數字中是否含有小數點--排除浮點數
#只要判斷字串是否為不包含小數點的數字字串即可
<?php header("Content-type:text/html;charset=utf-8"); function f($str){ if(!is_numeric($str)||strpos($str,".")!==false){ echo "$str 字符串不是整数<br><br>"; }else{ echo "$str 字符串是整数<br><br>"; } } f("a678"); f("3.14"); f("67854"); ?>
說明:
#intval() 函數
intval() 函數用來取得變數的整數值。
intval() 函數透過使用指定的進位 base 轉換(預設為十進位),傳回變數 var 的 integer 數值。 intval() 不能用於 object,否則會產生 E_NOTICE 錯誤並傳回 1。
int intval ( mixed $var [, int $base = 10 ] )
參數說明:
$var:要轉換成 integer 的數量值。
$base:轉換所使用的進位。
如果base 是0,透過偵測var 的格式來決定使用的進位:
is_numeric()函數
is_numeric() 函數用於偵測變數是否為數字或數字字串。bool is_numeric ( mixed $var )參數說明:
strpos()函數
strpos()函數尋找字串在另一字串中第一次出現的位置(區分大小寫)。strpos($string,$find,$start)參數說明:
PHP影片教學》
以上是php怎麼判斷字串是不是整數的詳細內容。更多資訊請關注PHP中文網其他相關文章!