php
html' target='_blank'>class test{}
$a1 = null;
$a2 = "";
//$a3 =
$a4 = 0;
$a5 = '0';
$a6 = false;
$a7 = array();
//var $a8;
$a9 = new test();
for ($i=1; $i 9 ; $i++) {
$s = 'a'.$i;
echo $i . ":";
var_dump(isset($$s));
echo '';
}
echo '';
for ($i=1; $i 9 ; $i++) {
$s = 'a'.$i;
echo $i . ":";
var_dump(empty($$s));
echo '';
}
PS:PHP中empty()和isset()的區別
對于初學php的人來說,empty()和和isset()用法的區別是很難搞清楚的,他們的用法的差別不仔細去琢磨的話確實很難弄清楚。
先說一下他們的共同點:
都可以判定一個變量是否為空;
都返回boolean類型,即true或false。
下面具體說一下他們用法之間的區別:
isset()用來檢測變量是否設置,只能用于變量,因為傳遞任何其它參數都將造成解析錯誤。若想檢測常量是否已設置,可使用 defined() 函數。如果已經使用 unset() 釋放了一個變量之后,它將不再是 isset()。若使用 isset() 測試一個被設置成 NULL 的變量,將返回 FALSE。(注意的是一個 NULL 字節("")并不等同于 PHP 的 NULL 常數)
empty()用來檢查一個變量是否為空。
他們之間最大的區別就是對于0的判斷,若用empty判斷會認為是空,用isset則認為不為空,舉個例子:
php
var $a=0;
//empty($a)返回true
if(empty($a)){
echo "判斷結果是空"
}
//isset($a)返回true
if(isset($a)){
echo "判斷結果不是空"
}
?>
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答