您好,登錄后才能下訂單哦!
本篇內容介紹了“怎么使用PHP函數來檢測變量的類型”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
PHP中提供了許多檢測數據類型的函數,但大致可以分為兩種:gettype()函數和is_*
類函數。下面我們通過代碼示例來了解一下。
我們先來看看下面一個例子:
<?php echo gettype(102) ."<br>"; echo gettype(true) ."<br>"; echo gettype(' ') ."<br>"; echo gettype(null) ."<br>"; echo gettype(array()) ."<br>"; echo gettype(new stdclass()); ?>
看看輸出結果:
gettype()函數可以獲取并返回變量的類型,返回值可以為:
boolean
integer
double
(從 PHP 4 起,如果是 float 就返回“double”,而不是“float”了)
string
array
object
resource
(資源)
resource是一種特殊的變量類型,保存了到外部資源的一個引用;它主要描述一個 PHP 的擴展資源。resource(資源)是通過專門的函數來建立和使用的。
NULL
NULL 也是一種特殊的數據類型,它只有一個值,即 NULL,表示空值(即變量沒有值)。
unknown type
gettype()函數由于包含了字符串的比較,因此運行是較慢的。除了這個函數外,我們還可以使用is_*
系列函數來檢測變量的類型。
我們來看看下面一個例子:
<?php header("Content-type:text/html;charset=utf-8"); $num1 = 123456; $arr = array(1, 2, 3, 4, 5, 6, 7); $bool = false; $str1 = NULL; $str2 = '654321'; $float = 3.1415926; $str3 = 'hello!'; class foo { function dosomething() { echo "你好!"; } } $obj = new foo(); if (is_array($arr)) echo '$arr 是數組'; echo '<br>'; if (!is_array($num1)) echo '$num1 不是數組'; echo '<br>'; if (is_numeric($str2)) echo '$str2 是數字'; echo '<br>'; if (is_bool($bool)) echo '$bool 是數字'; echo '<br>'; if (is_float($float)) echo '$float 是浮點類型'; echo '<br>'; if (!is_float($str2)) echo '$str2 不是浮點類型'; echo '<br>'; if (is_int($num1)) echo '$num1 是整數類型'; echo '<br>'; if (!is_int($float)) echo '$float 不是整數類型'; echo '<br>'; if (is_string($str2)) echo '$str2 是字符串'; echo '<br>'; if (is_object($obj)) echo '$obj 是一個對象'; echo '<br>'; if (!isset($str1)) echo '$str1 未定義或則值為 NULL'; ?>
看看輸出結果:
is_* 系列中多個作用不同的函數,可以利用這些函數來分別檢查變量的數據類型。下面我們來看看常用的幾個檢查函數:
1、is_int():檢測變量$var
是否為整數類型(integer),如果$var
是則返回TRUE,否則返回 FALSE;語法“is_int($var)
”,別名為is_integer()。
2、is_float():檢測變量$var
是否為浮點型,如果$var
是則返回TRUE,否則返回 FALSE;語法“is_float($var)
”,別名為is_real()。
3、is_string():檢測變量$var
是否為字符串型,如果$var
是則返回TRUE,否則返回 FALSE;語法“is_string($var)
”。
4、is_array():檢測變量$var
是否為數組,如果$var
是則返回TRUE,否則返回 FALSE;語法“is_array($var)
”。
5、is_object():檢測變量$var
是否是一個對象,如果$var
是則返回TRUE,否則返回 FALSE;語法“is_object($var)
”。
6、is_numeric():檢測變量$var
是否為數字或者數字字符串,如果$var
是則返回TRUE,否則返回 FALSE;語法“is_numeric($var)
”。
“怎么使用PHP函數來檢測變量的類型”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。