PHP中有很多函數功能類似,卻有著細微的差別...
is_null, empty, isset, unset 我們先來看看這4個函數的描述。 isset 判斷變量是否已存在(配置) unset 把變量刪除(釋放)掉 empty 判斷變量是否為空 is_null 判斷變量是否為NULL ok,已經開始搞人了。那么開始,這4個函數中除了unset,其他3個都是判斷函數,unset首先出局,因為他不會搞錯,其次是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 從中我們可以發(fā)現只要變量是否為" "或者0,或者是false和null,只要是這些值empty都會返回true,而isset是判斷變量是否存在,只要你這個變量不是null或未賦值,返回結果都是true,而is_null正好是isset的反結果。 |
|