$var = '';
// 結果為 TRUE,是以後邊的文本将被列印出來。
if (isset($var)) {
print "變量 var 已經設定成功, 是以這句話你可以看得到。".'
';
}
// 在後邊的例子中,我們将使用 var_dump 輸出 isset() 的傳回值。
$a = "test";
$b = "anothertest";
echo "變量 a 已經設定,成功的傳回值為";
echo isset($a).'
';
echo "使用 var_dump 輸出 isset() 的傳回值:";
var_dump( isset($a) ); // TRUE
var_dump( isset ($a, $b) ); // TRUE
unset ($a);
var_dump( isset ($a) ); // FALSE
var_dump( isset ($a, $b) ); // FALSE
$foo = NULL;
var_dump( isset ($foo) ); // FALSE
?>
程式運作結果
變量 var 已經設定成功, 是以這句話你可以看得到。
變量 a 已經設定,成功的傳回值為1
使用 var_dump 輸出 isset() 的傳回值:bool(true)
bool(true)
bool(false)
bool(false)
bool(false)
如果已經使用 unset() 釋放了一個變量之後,它将不再是 isset()。若使用 isset() 測試一個被設定成 NULL 的變量,将傳回 FALSE。同時要注意的是一個 NULL 位元組("\0")并不等同于 PHP 的 NULL 常數。
這對于數組中的元素也同樣有效:
$a = array ('test' => 1, 'hello' => NULL);
var_dump( isset ($a['test']) ); // TRUE
var_dump( isset ($a['foo']) ); // FALSE
var_dump( isset ($a['hello']) ); // FALSE
// 鍵 'hello' 的值等于 NULL,是以被認為是未置值的。
// 如果想檢測 NULL 鍵值,可以試試下邊的方法。
var_dump( array_key_exists('hello', $a) ); // TRUE
?>
程式輸出
bool(true)
bool(false)
bool(false)
bool(true)
由于這是一個語言結構而非函數,是以它無法被“變量函數”調用。
延伸閱讀
此文章所在專題清單如下: