首頁  >  文章  >  後端開發  >  php判斷值是否為空

php判斷值是否為空

(*-*)浩
(*-*)浩原創
2019-09-21 09:33:497558瀏覽

最近學習php,關於判斷是否為空的疑惑,和記錄分享給你大家。

php判斷值是否為空

empty

如果 變數 是非空或非零的值,則 empty() 傳回 FALSE。換句話說,」」、0、」0″、NULL、FALSE、array()、var $var、未定義;以及沒有任何屬性的物件都將被視為空的,如果var 為空,則傳回TRUE 。 (推薦學習:PHP程式設計從入門到精通

如果e是未定義或值為NULLL,e是未定義或值為NULLL,e=NULL,它肯定是空,即empty($e)=true;

如果e是int型,e是int型,e=0,就相對於數字,0代表為零,即empty($e)=true;

如果e是string類型,e是string類型,e=”“,相對於字串,”“就代表為是空,即empty($e)=true;

如果e是string類型,e是string類型,e=”0”,相對於字串,”0“就代表為是零,即empty($e)=true;

如果e是bool型,e是bool型,e=false,相對true,false代表為空,即empty($e)=true;

如果e是array型,e是array型,a=array( ),相對數組來說,沒有元素的資料就為空,即empty($e)=true;

#isset

如果變數存在(非NULL)則傳回TRUE,否則回傳FALSE(包括未定義)。變數值設定為:null,返回也是false;unset一個變數後,變數被取消了。注意,isset對於NULL值變量,特殊處理。

is_null

偵測傳入值【值,變數,表達式】是否是null,只有一個變數定義了,且它的值是null,它才回傳TRUE .其它都回傳FALSE 【未定義變數傳入後會出錯! 】

在某些情況下,建議使用isset來判斷一個變數是否為NULL。

但是從語意上來說,一個變數」是否已顯示初始化「和」是否為NULL「是不同的概念,在某些場景下使用isset是不合適的,例如檢查一個函數的回傳值是否為NULL。

此時可以使用”==”和”===“來判斷它們是否為NULL。

對於”==”和”===“,它們直接的區別還是很大。對於”==”,它認同空字串,0,false都為NULL。而對於”===”,只有變數真的是NULL,它才會代表NULL。

另外”===”相對於”isset”來說,性能基本上接近,甚至要好點。

因此綜上述,判斷變數是否為NULL最好的辦法就是直接使用”===”,這樣就不用在is_null,isset之間猶豫。其實上述的結論也同理於False的判斷。

以上是php判斷值是否為空的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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