PHP的isset()函數 一般用來檢測變量是否設置
格式:bool isset ( mixed var [, mixed var [, ...]] )
功能:檢測變量是否設置
返回值:
若變量不存在則返回 FALSE
若變量存在且其值為NULL,也返回 FALSE
若變量存在且值不為NULL,則返回 TURE
同時檢查多個變量時,每個單項都符合上一條要求時才返回 TRUE,否則結果為 FALSE
版本:PHP 3, PHP 4, PHP 5
更多說明:
使用 unset() 釋放變量之后,它將不再是 isset()。
PHP函數isset()只能用於變量,傳遞任何其它參數都將造成解析錯誤。
檢測常量是否已設置可使用 defined() 函數。
PHP的empty()函數 判斷值為否為空
格式:bool empty ( mixed var )
功能:檢查一個變量是否為空
返回值:
若變量不存在則返回 TRUE
若變量存在且其值為""、0、"0"、NULL、、FALSE、array()、var $var; 以及沒有任何屬性的對象,則返回 TURE
若變量存在且值不為""、0、"0"、NULL、、FALSE、array()、var $var; 以及沒有任何屬性的對象,則返回 FALSE
版本:PHP 3, PHP 4, PHP 5
更多說明:
empty()的返回值=!(boolean) var,但不會因為變量未定義而產生警告信息。參見轉換為布爾值獲取更多信息。
empty() 只能用於變量,傳遞任何其它參數都將造成Paser error而終止運行。
檢測常量是否已設置可使用 defined() 函數。
3. is_null():
bool is_null ( mixed $var ) (php.net官方文檔的函數定義)
當參數滿足下面三種情況時,is_null()將返回TRUE,其它的情況就是FALSE
1、它被賦值為NULL
2、它還沒有賦值
3、它未定義,相當於unset(),將一個變量unset()后,不就是沒有定義嗎
讓我們來看一些例子:
$myvar = NULL; var_dump(is_null($myvar)); // TRUE $myvar1; var_dump(is_null($myvar1)); // TRUE Notice: Undefined variable $num = 520; unset($num); var_dump(is_null($num)); //TRUE Notice: Undefined variable var_dump(is_null($some_undefined_var)); //TRUE Notice: Undefined variable $myvar = 0; is_null($myvar); // FALSE $myvar = FALSE; is_null($myvar); // FALSE $myvar = ''; is_null($myvar); // FALSE