PHP isset()、empty()、is_null()的區別

這三個方法都是來判斷是否為空值或是有沒有宣告變數的方法,比較容易搞混的是 isset()、 empty() 。簡單整理一下這三個差異的筆記。

  • isset() 檢查的變數存不存在
  • empty()檢查的變數內的是否為空
  • is_null():檢查變數是否為null

官網有整理很詳細的結果比較表,下方表格我簡單整理,列出常讓我搞混的情況,其他詳細資料可以參考官網!

gettype() isset() empty() is_null()
$x is undefined NULL FALSE TRUETRUE
$x = null;NULL FALSE TRUE TRUE
$x = 0;integerTRUE TRUE FALSE
$x = “0”; string TRUE TRUEFALSE
$x = 1;integerTRUE FALSE FALSE
$x = “”;stringTRUETRUE FALSE
$x = “PHP”; stringTRUEFALSE FALSE

參考來源


發佈留言