搜尋
首頁後端開發PHP問題php如何判斷一個變數是否為空值

php如何判斷一個變數是否為空值

判斷變數為空,在許多場合都會用到,同時自己和許多新手一樣也常常會犯一些錯誤,所以自己整理了一下PHP中一些常用的、判斷變量為空的方法。

1. isset功能:判斷變數是否被初始化

說明:它並不會判斷變數是否為空,並且可以用來判斷數組中元素是否被定義過。

注意:當使用isset來判斷陣列元素是否被初始化過時,它的效率比array_key_exists高約4倍。

$a = '';

$a['c'] = '';

if (!isset($a)) echo '$a 未被初始化' . "";

if (!isset($b)) echo '$b 未初始化' . "";

if (isset($a['c'] )) echo '$a 已被初始化' . "";

// 顯示結果為

// $b 未被初始化

#// $a 已被初始化

相關推薦:《php入門教學

#2. empty功能:偵測變數是否為「空」

說明:任何一個未初始化的變數、值為0 或false 或空字串”" 或null的變數、空數組、沒有任何屬性的對象,都會判斷為empty==true。

注意1:未初始化的變數也能被empty偵測為「空」。

注意2:empty只能偵測變量,而無法偵測語句。

$a = 0;

$b = '';

$c = array();

if (empty($a)) echo '$a 為空' . "";

if (empty($b)) echo '$b 為空' . "";

if (empty($c)) echo '$c 為空' . "";

if (empty($d)) echo '$d 為空' . "";

3. var == null功能:判斷變數是否為「空」

說明:值為0 或false 或空字串」" 或null的變數、空數組、都會判斷為null。

注意:與empty的顯著差異就是:變數未初始化時 var == null 將會報錯。

$a = 0;

$b = array();

if ($a == null) echo '$a 為空' . "";

if ($b == null) echo '$b 為空' . "";

if ($c == null) echo '$b 為空' . "";

// 顯示結果為

// $a 為空

// $b 為空

// Undefined variable: c

#4. is_null功能:偵測變數是否為「null」

說明:當變數被賦值為「null」時,偵測結果為true。

注意1:null不區分大小寫:$a = null; $a = NULL 沒有任何差別。

注意2:僅在變數的值為「null」時,偵測結果才會為true,0、空字串、false、空數組都偵測為false。

注意3:變數未初始化時,程式將會報錯。

$a = null;

$b = false;

if (is_null($a)) echo '$a 為NULL' . "";

if (is_null($b)) echo '$b 為NULL' . "";

if (is_null($c)) echo '$c 為NULL' . "";

// 顯示結果為

// $a 為NULL

// Undefined variable: c

5. var === null功能:偵測變數是否為“null”,同時變數的型別也必須是“null”

說明:當變數被賦值為“null”時,同時變數的型別也是“null”時,偵測結果為true。

注意1:在判斷為「null」上,全等於和is_null的作用相同。

注意2:變數未初始化時,程式將會報錯。

總結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」等值的干擾。

6. 判斷取得的POST陣列是否有空值:

[codes]$data = $_POST;

foreach ($data as $value){

if($value == ""){

error('請完整填寫表單內容');

##}

}[/codes]

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

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

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具