複製鏈接
請複製以下鏈接發送給好友

gettype

鎖定
gettype是以string gettype ( mixed var )為函數原型的一種計算機運算方法。
函數原型
string gettype ( mixed var )
返回值
變量類型的字符串
作    用
返回PHP變量的類型

目錄

gettype描述

string gettype ( mixed var )
返回PHP變量的類型。

gettype返回值

返回的字符串的可能值為:
boolean”(從 PHP 4 起)
integer
double”(由於歷史原因,如果是 float 則返回“double”,而不是“float”)
string
array
object
resource”(從 PHP 4 起)
NULL”(從 PHP 4 起)
“user function”(只用於 PHP 3,現已停用)
“unknown type”

gettype注意

不要使用gettype()來測試某種類型,因為其返回的字符串在未來的版本中可能需要改變。此外,由於包含了字符串的比較,它的運行也是較慢的。
請使用 is_* 函數代替。例如:is_array()、is_bool()、is_float()、is_int()、is_null()、is_object()、is_resource()、is_string()等。
對於 PHP 4,你應該使用 function_exists() 和 method_exists() 取代先前將 gettype() 作用於函數的用法。

gettype建議

但是有時候我們又不得不使用gettype這樣的功能來判斷參數的類型,這個時候我們應該怎麼辦?我們可以自己定義一個函數實現這個邏輯。 [1] 
function get_type($var) {
    if (is_object($var)) {
        return get_class($var);
        }
    if (is_null($var)) {
        return 'null';
        }
    if (is_string($var)) {
        return 'string';
        }
    if (is_array($var)) {
        return 'array';
        }
    if (is_int($var)) {
        return 'integer';
        }    
    if (is_bool($var)) {       
        return 'boolean';
        }    
    if (is_float($var)) {
        return 'float';
        }
    if (is_resource($var)) {
        return 'resource';
        }    
    return 'unknown';
    }   
另一個版本:
function get_type($var) {    
    if (is_array($var)) {    
        return "array";    
        }    
    if (is_bool($var)) {    
        return "boolean";    
        }    
    if (is_float($var)) {    
        return "float";    
        }    
    if (is_int($var)) {    
        return "integer";    
        }    
    if (is_null($var)) {    
        return "NULL";    
        }    
    if (is_numeric($var)) {    
        return "numeric";    
        }    
    if (is_object($var)) {    
        return "object";    
        }    
    if (is_resource($var)) {    
        return "resource";    
        }    
    if (is_string($var)) {    
        return "string";    
        }    
    return "unknown";    
    }    

參考資料