首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

PHP 判斷變量為空的五種方法總結與選型指南

     編輯:PHP 相關知識

方法對照表

方法判斷為 TRUE 的值未聲明變量適用場景
isset($v)變量存在且 ≠ nullFALSE(不報錯)檢查變量是否初始化、數組鍵是否存在
empty($v)""、0、"0"、null、false、[]、未聲明TRUE(不報錯)表單驗證、檢查「無效」值
$v == null""、0、"0"、null、false、[]報 Notice鬆散空值檢查(已知變量存在)
is_null($v)嚴格 null報 Notice精確判斷 null 型別
$v === null嚴格 null報 Notice型別+值雙重檢查

核心結論

  • 「NULL」與「空」是兩個概念:null 是型別,""、0、false 是值。
  • 僅判斷 null 型別 → is_null() 或 === null。
  • 判斷「無效/空值」含 0 → empty()(但注意 0 被視為空)。
  • 判斷變量是否聲明/初始化 → isset()(最高效、不報錯)。
  • 數組鍵存在性 → isset($arr['key']) 效率比 array_key_exists 高 4 倍。

實戰選型流程圖

需要檢查變量?
 ├─ 是否已聲明? → isset()
 ├─ 是否為 null 型別? → is_null() / === null
 ├─ 是否為「空值」含 0/false/空串? → empty()
 └─ 鬆散比較(已知存在)? → == null

常見錯誤示例

$a = 0;
if (empty($a)) echo "empty";      // 輸出 empty(業務若允許 0 則錯誤)
if ($a == null) echo "==null";    // 輸出 ==null
if (is_null($a)) echo "is_null";  // 無輸出
if ($a === null) echo "===null";  // 無輸出
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved