PHP isset()函數(shù)使用方法詳解
isset() 函數(shù)可以檢測「變量是否存在」并非NULL。常用來判斷變量是否被定義,以避免變量未定義而報錯。
語法
bool isset( $var )
參數(shù)
- $var :需要檢測的變量
返回值:
isset() 返回一個布爾類型的值。
- true :變量「已定義」
- false:變量「未定義」或變量為 NULL 或 變量被 unset()
一、判斷變量是否存在
變量「存在」返回 true ,變量「不存在」返回 false
實例:
<?php $var1 = 'hello world'; var_dump(isset($var1)); var_dump(isset($var2));
輸出:
bool(true)
bool(false)
二、判斷變量是否為NULL
1)當變量賦值為 NULL 時, isset() 也會返回 false。
實例:
$var1 = NULL; var_dump(isset($var1));
輸出:
bool(false)
2)這里的 NULL 是指PHP的「常量」 NULL ,也就是空的意思,所以會返回 false;字符串類型的變量‘NULL’等,則會返回 true 。
實例:
$var1 = 'null'; $var2 = 'NULL'; $var3 = '/0'; $var4 = NULL; var_dump(isset($var1)); var_dump(isset($var2)); var_dump(isset($var3)); var_dump(isset($var4));
輸出:
bool(true)
bool(true)
bool(true)
bool(false)
三、同時判斷多個變量
判斷「多個變量」時,使用逗號,分隔。
從左往右逐個判斷,只要有一個變量不存在或者為NULL或者被 unset() ,就會立刻停止,并會返回 false。
實例:
$var1 = 'hello world'; var_dump(isset($var1)); var_dump(isset($var1,$var2));
輸出:
bool(true)
bool(false)
四、unset()釋放變量
unset() 函數(shù)「釋放變量」后, isset() 也會返回 false。
實例:
$var1 = 'hello world'; var_dump(isset($var1)); unset($var1); var_dump(isset($var1));
輸出:
bool(true)
bool(false)
五、判斷數(shù)組元素是否存在
實例
$array1 = array('a','b');
var_dump(isset($array1[0]));輸出:
bool(true)
六、判斷對象屬性是否存在
isset() 可以判斷對象的「公有成員」,但無法判斷「私有成員」;因為私有成員外部不可見,也沒辦法調(diào)用。
實例:
class Class1{
public $var1 = 'hello public';
private $var2 = 'hello private';
}
$class1 = new Class1();
var_dump(isset($class1->var1));
var_dump(isset($class1->var2));輸出:
bool(true)
bool(false)
七、三元表達式
擴展一個 isset() 配合三元表達式的使用方式
$result = isset($_GET['value']) ? $_GET['value'] : '';
這行代碼的意思是:如果接收到參數(shù) value 的值了,就賦值給 $result,否則就給 $result 賦值為空 ‘’。
到此這篇關于PHP isset()函數(shù)使用方法詳解的文章就介紹到這了,更多相關PHP isset()函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
PHP 雜談《重構-改善既有代碼的設計》之一 重新組織你的函數(shù)
我把我比較喜歡的和比較關注的地方寫下來和大家分享。上次我寫了篇《php 跟老大的對話》。還是有很多疑問,這書幫了我不少的忙2012-04-04
PHP HTML JavaScript MySQL代碼如何互相傳值的方法分享
有時候我們需要在PHP HTML JavaScript中互相傳值,那么就可以參考下面的方法,asp,asp.net都是一樣的思路與原理,需要的朋友可以參考下2012-09-09

