isset功能:判斷變數是否被初始化
說明:它並不會判斷變數是否為空,可以用來判斷陣列中元素是否被定義過。
<?php
//$a = '';
//$a = false;
$a['c'] = '';
if (!isset($a)) echo
'$a 未被初始化' . "
"; if (!isset($b)) echo
'$b 未被初始化' . "
"; if (isset($a['c'])) echo
'$a 已經被初始化' . "
";//結果
// $b 未被初始化
// $a 已經被初始化
empty()功能:檢測變數是否為」空」說明:任何乙個未初始化的變數、值為 0 或 false 或 空字串」」 或 null的變數、空陣列、沒有任何屬性的物件, empty(變數) == true。
<?php
$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 為空' . "
";//結果
// $a 為空
// $b 為空
// $c 為空
// $d 為空
var_dump(empty(null));
var_dump(empty(0));
var_dump(empty(''));
var_dump(empty());
//結果
// bool(true)
// bool(true)
// bool(true)
// bool(true)
var == null功能:判斷變數是否為」空」說明:值為 0 或 false 或 空字串」」 或 null的變數、空陣列、都將判斷為 null。
<?php
$a = 0;
$b = array();
if ($a == null) echo
'$a 為空' . "";
if ($b == null) echo
'$b 為空' . "";
if ($c == null) echo
'$c 為空' . "";
// 顯示結果為
// $a 為空
// $b 為空
// undefined variable: c
is_null功能:檢測變數是否為」null」說明:當變數被賦值為」null」時,檢測結果為true。
<?php
$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
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。
PHP判斷是否為空的5種方法
isset功能 判斷變數是否被初始化 說明 它並不會判斷變數是否為空,可以用來判斷陣列中元素是否被定義過。a a false a c if isset a echo a 未被初始化 if isset b echo b 未被初始化 if isset a c echo a 已經被初始化 結果 b 未被初...
php 判斷陣列是否為空的幾種方法
php判斷陣列為空方法1 count arr count 如果輸出為0的話 那麼這個陣列就是空的 php判斷陣列為空方法2 empty arr php判斷陣列為空方法3 for迴圈 最簡單也是最直接的方法,用for迴圈來遍歷陣列。對於已知維數的陣列可以判斷,但如果是未知的多維陣列,該怎麼辦?php判...
PHP 判斷陣列是否為空的方法
1.isset功能 判斷變數是否被初始化 說明 它並不會判斷變數是否為空,並且可以用來判斷陣列中元素是否被定義過 注意 當使用isset來判斷陣列元素是否被初始化過時,它的效率比array key exists高4倍左右 a a c if isset a echo a 未被初始化 if isset ...