PHP判斷變量爲空

====== PHP判斷變量爲空 ======數組

===== isset =====對象

功能:字符串

  • 判斷變量是否被初始化。
  • 數組中元素是否被定義過。
  • 當使用isset來判斷數組元素是否被初始化過期,它的效率比array_key_exists高4倍左右

===== empty =====效率

功能:檢測變量是否爲「空」變量

任何一個程序

  • 未初始化的變量
  • 0
  • false
  • 空字符串「」
  • null
  • 空數組
  • 沒有任何屬性的對象

都將判斷爲empty==true總結

注意:sse

  • 未初始化的變量也能被empty檢測爲「空」
  • empty只能檢測變量,而不能檢測語句

===== var == null =====字符

功能:判斷變量是否爲「空」

說明:

  • 0
  • false
  • 空字符串「」
  • null
  • 空數組

都將判斷爲 null

注意:與empty的顯著不一樣就是:變量未初始化時 var == null 將會報錯。

===== var === null =====

功能:檢測變量是否爲「null」,同時變量的類型也必須是「null」

說明:當變量被賦值爲「null」時,同時變量的類型也是「null」時,檢測結果爲true

注意:

  • 在判斷爲「null」上,全等於和is_null的做用相同
  • 變量未初始化時,程序將會報錯

===== is_null =====

功能:檢測變量是否爲「null」

說明:當變量被賦值爲「null」時,檢測結果爲true

注意:

  • null不區分大小寫:$a = null; $a = NULL 沒有任何區別
  • 僅在變量的值爲「null」時,檢測結果才爲true;0、空字符串、false、空數組都檢測爲false
  • 變量未初始化時,程序將會報錯

===== 總結 =====

PHP中,「NULL」 和 「空」 是2個概念。

  • isset 主要用來判斷變量是否被初始化過
  • empty 能夠將值爲 「假」、「空」、「0」、「NULL」、「未初始化」 的變量都判斷爲TRUE
  • is_null 僅把值爲 「NULL」 的變量判斷爲TRUE
  • var == null 把值爲 「假」、「空」、「0」、「NULL」 的變量都判斷爲TRUE
  • var === null 僅把值爲 「NULL」 的變量判斷爲TRUE

因此咱們在判斷一個變量是否真正爲「NULL」時,大多使用 is_null,從而避免「false」、「0」等值的干擾。

相關文章
相關標籤/搜索