首頁  >  文章  >  後端開發  >  php中isset()和unset()函數使用方法詳解

php中isset()和unset()函數使用方法詳解

怪我咯
怪我咯原創
2017-07-04 13:46:522062瀏覽

本篇文章主要是對PHP中isset()和unset()函數的用法進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助

isset
(PHP 3, PHP 4, PHP 5 )

isset -- 偵測變數是否設定

描述
#bool isset ( mixed var [, mixed var [, ...]])
如果var 存在則回傳TRUE,否則回傳FALSE。

如果已經使用 unset() 釋放了一個變數之後,它將不再是 isset()。若使用 isset() 測試一個被設定成 NULL 的變量,將會傳回 FALSE。同時要注意的是一個 NULL 位元組("\0")並不等同於 PHP 的 NULL 常數。

警告: isset() 只能用於變量,因為傳遞任何其它參數都會造成解析錯誤。若想要偵測常數是否已設置,可使用 defined() 函數。

程式碼如下:

<?php
$var = &#39;&#39;;
// 结果为 TRUE,所以后边的文本将被打印出来。
if (isset($var)) {
     print "This var is set set so I will print.";
}
// 在后边的例子中,我们将使用 var_dump 输出 isset() 的返回值。
$a = "test";
$b = "anothertest";
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
?>

這對陣列中的元素也同樣有效:

 程式碼如下:

<?php
$a = array (&#39;test&#39; => 1, &#39;hello&#39; => NULL);
var_dump( isset ($a[&#39;test&#39;]) );            // TRUE
var_dump( isset ($a[&#39;foo&#39;]) );             // FALSE
var_dump( isset ($a[&#39;hello&#39;]) );           // FALSE
// 键 &#39;hello&#39; 的值等于 NULL,所以被认为是未置值的。
// 如果想检测 NULL 键值,可以试试下边的方法。 
var_dump( array_key_exists(&#39;hello&#39;, $a) ); // TRUE
?>

註:由於這是一個語言結構而非函數,因此它無法被“變數函數”呼叫。

合理應用PHP函數isset()可以幫助我們是偵測變數是否設定。若果實變數不存在則傳回 FALSE,而如果變數存在且值不為NULL,則傳回 TURE。

透過PHP語言的學習,應該知道它是基於函數的一個HTML腳本語言。龐大的函數庫支援PHP語言功能的實作。以下我們為大家介紹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() 函數。

unset()

銷毀指定的變數。注意在 PHP 3 中,unset() 會傳回 TRUE(實際上是整數值 1),而在 PHP 4 中,unset() 不再是一個真正的函數:它現在是一個語句。這樣就沒有了回傳值,試圖取得 unset() 的回傳值將導致解析錯誤。

以上是php中isset()和unset()函數使用方法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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