首頁  >  文章  >  後端開發  >  php怎麼檢測字串是否為數字

php怎麼檢測字串是否為數字

青灯夜游
青灯夜游原創
2022-08-29 19:21:535351瀏覽

兩種偵測方法:1、使用is_numeric()函數,可以偵測一個字串是否為數字字串,語法“is_numeric(字串)”,傳回TRUE則是,反之則不是。 2.將字串強制轉為數字類型,再將數字與原字串進行比較,判斷是否相等,語法“strcmp((float)$str,$str)==0”,返回TRUE則是,反之則不是。

php怎麼檢測字串是否為數字

本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦

方法1:使用is_numeric()函數偵測

字串只含數字,則字串為數字字串。

而is_numeric()函數可以偵測一個字串是否為數字字串。

is_numeric ($var)
  • $var:要偵測的變數。

如果指定的變數$var是數字和數字字串則傳回 TRUE,否則傳回 FALSE。注意浮點型回傳 1,即 TRUE。 (即可以檢查整數和小數)。

<?php
header("Content-type:text/html;charset=utf-8");
function f($str){
	if (is_numeric($str)){
    	echo "$str 是数字字符串<br><br>";
	}
	else{
	    echo "$str 不是数字字符串<br><br>" ;
	}
}
f("a678");
f("678");
f("3.14");

?>

php怎麼檢測字串是否為數字

方法2:強制類型轉換並比較是否相等

  • 透過強制轉換類型,將字串轉為數字類型

  • 將數字與原始字串進行比較,看看是否相等

    相等,則原始字串是數字字串。

<?php
header("Content-type:text/html;charset=utf-8");
function f($str){
	$num=(float)$str;
	if (strcmp($num,$str)==0){
    	echo "$str 是数字字符串<br><br>";
	}
	else{
	    echo "$str 不是数字字符串<br><br>" ;
	}
}
f("3.14");
f("a678");
f("678");
f("23d5");
?>

php怎麼檢測字串是否為數字

說明:

1、強制型別轉換

只要在要轉換的變數之前加上用括號括起來的目標類型,括號中允許使用的變數類型如下所示:

  • (int)、(integer):轉換成整型;

  • (bool)、(boolean):轉換成布林型別;

  • (float)、(double)、( real):轉換成浮點數型別;

  • (string):轉換成字串型別;

  • (array):轉換成陣列型別;

  • (object):轉換成物件類型。

<?php
header(&#39;content-type:text/html;charset=utf-8&#39;);   
$str = &#39;123.456abc&#39;;
echo &#39;原变量 $str 的类型为:&#39;.gettype($str)."<br>";
$int = (int)$str;
echo &#39;变量 $int 的类型为:&#39; . gettype($int) . &#39;<br>&#39;;
$float = (float)$str;
echo &#39;变量 $float 的类型为:&#39; . gettype($float) . &#39;<br>&#39;;
$bool = (bool)$str;
echo &#39;变量 $bool 的类型为:&#39; . gettype($bool). &#39;<br>&#39;;
$arr = (array)$str;
echo &#39;变量 $arr 的类型为:&#39; . gettype($arr);
?>

php怎麼檢測字串是否為數字

2、strcmp() 函數

strcmp() 函數比較兩個字串。

strcmp(string1,string2)
傳回值: 此函數傳回:
  • 0 - 如果兩個字串相等
  • < ;0 - 如果string1 小於string2
  • >0 - 如果string1 大於string2

推薦學習:《PHP影片教學

以上是php怎麼檢測字串是否為數字的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn