PHP檢查空值的方法總結

1、使用empty(),檢測變量是否為空

<?php
$a = 'test';
$b = array('key1' => 'value1');
$class = new stdClass();
var_dump(empty($c)); // 輸出 bool(true)
var_dump(empty($b['key2'])); // 輸出 bool(true)
var_dump(empty($class)); // 輸出 bool(false)
var_dump(empty($class->test->test)); // 輸出 bool(true)
class EmptyClass{};
$empty_class = new EmptyClass();
var_dump(empty($empty_class));// 輸出 bool(false)
?>

2、使用isset()判斷變量是否被初始化,可用來測試變量是否已經配置

<?php
$a = 'test';
$b = array('key1' => 'value1');
$class = new stdClass();
var_dump(isset($class->test->test)); // 判斷對象屬性是否定義:輸出 bool(false)
var_dump(isset($a)); // 判斷變量是否定義:輸出 bool(true)
var_dump(isset($c)); // 判斷變量是否定義:輸出 bool(false)
var_dump(isset($b['key1'])); // 判斷數組元素是否定義:輸出 bool(true)
var_dump(isset($b['key2'])); // 判斷數組元素是否定義:輸出 bool(false)
?>

3、使用is_null()檢測變量是否為null

<?php
$a = null;
$b = false;
var_dump(is_null($a));  
var_dump(is_null($b));
var_dump(is_null($c));
?>

4、可以使用var == null來判斷變量是否為空

<?php
$a = 0;
$b = array();
var_dump($a == null);  
var_dump($b == null);
var_dump($c == null);
?>

知識點擴展:

是否定義判斷: isset()

可以使用 isset() 函數判斷一個變量是否定義,數組內某個元素是否被初始化,它的效率比 array_key_exists() 高4倍左右

$a = 'test';
$b = array('key1' => 'value1');
$class = new stdClass();
var_dump(isset($class->test->test)); // 判斷對象屬性是否定義:輸出 bool(false)
var_dump(isset($a)); // 判斷變量是否定義:輸出 bool(true)
var_dump(isset($c)); // 判斷變量是否定義:輸出 bool(false)
var_dump(isset($b['key1'])); // 判斷數組元素是否定義:輸出 bool(true)
var_dump(isset($b['key2'])); // 判斷數組元素是否定義:輸出 bool(false)

是否為空判斷:empty()

empty() 函數, 檢測變量是否為空

任何一個未初始化的量,0,false,空字符串,null,空數組,使用 empty 判斷都會返回 true

var_dump(empty($c));     // 輸出 bool(true)
var_dump(empty($b['key2'])); // 輸出 bool(true)
var_dump(empty($class));   // 輸出 bool(false)
var_dump($class);       // 輸出 object(stdClass)#1 (0) {}
var_dump(empty($class->test->test)); // 輸出 bool(true)
class EmptyClass{};
$empty_class = new EmptyClass();
var_dump(empty($empty_class));// 輸出 bool(false)

到此這篇關於PHP檢查空值的方法總結的文章就介紹到這瞭,更多相關PHP如何檢查空值內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: