empty和isset的區別


1、empty

判斷一個變量是否為空

null、false、0.0、0、’0′、array() 、' '、var $a   都會返回true。

2、isset

判斷一個變量是否設置

0、00、’0′、array() 、’ ‘、false、’false’、’null’都返回true。
只有值為null的變量返回true

3、if 判斷式

0、00、0.0、’0′、array() 、false、null返回false
‘00′、’0.0′、’null’、’false’、’ ‘返回true

isset判斷變量是否已存在(配置)

unset把變量刪除(釋放)掉

empty 判斷變量是否為空

is_null 判斷變量是否為NULL

is_null,我們可以把它看成是!isset,是isset的一個逆操作,下面一張表可以很清楚的說明他們之間的關系:

變量 empty is_null isset
$a=”“ true false true
$a=null true true false
var $a true true false
$a=array() true false true
$a=false true false true
$a=15 false false true
$a=1 false false true
$a=0 true false true
$a=”0” true false true
$a=”true” false false true
$a=”false” false false true

不難看出只要變量是否為” “或者0,或者是false和null,只要是這些值empty都會返回true,而isset是判斷變量是否存在,只要你這個變量不是null或未賦值,返回結果都是true,而is_null正好是isset的反結果。

當然如果只是想做如下工作:
echo !isset($_GET['a']); //如果得不到變量a的值
echo empty($_GET['a']); //如果變量a的值是空


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM