php中is_null,empty,isset,unset 的區別詳細介紹

is_null, empty, isset, unset 咱們先來看看這4個函數的描述。函數

isset 判斷變量是否已存在(配置)
unset 把變量刪除(釋放)掉
empty 判斷變量是否爲空
is_null 判斷變量是否爲NULL
ok,已經開始搞人了。那麼開始,這4個函數中除了unset,其餘3個都是判斷函數,unset首先出局,由於他不會搞錯,其次是is_null,咱們能夠把它當作是!isset,是isset的一個逆操做,下面一張表能夠很清楚的說明他們之間的關係:spa

複製代碼代碼以下:

變量                          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的反結果。code

 

固然若是隻是想作以下工做:
echo !isset($_GET['a']);  //若是得不到變量a的值
echo empty($_GET['a']);  //若是變量a的值是空it

那麼結果都是同樣的,均可以用。io

 

 

isset 判斷變量是否已存在table

empty 判斷變量是否爲空或爲0class

is_null 判斷變量是否爲NULL變量

變量 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
相關文章
相關標籤/搜索