您好,登錄后才能下訂單哦!
PHP中empty()和isset()的區別是什么,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
<?php 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 '<br />'; } echo '<br />'; for ($i=1; $i <=9 ; $i++) { $s = 'a'.$i; echo $i . ":"; var_dump(empty($$s)); echo '<br />'; }
PS:PHP中empty()和isset()的區別
對于初學php的人來說,empty()和和isset()用法的區別是很難搞清楚的,他們的用法的差別不仔細去琢磨的話確實很難弄清楚。
先說一下他們的共同點:
都可以判定一個變量是否為空;
都返回boolean類型,即true或false。
下面具體說一下他們用法之間的區別:
isset()用來檢測變量是否設置,只能用于變量,因為傳遞任何其它參數都將造成解析錯誤。若想檢測常量是否已設置,可使用 defined() 函數。如果已經使用 unset() 釋放了一個變量之后,它將不再是 isset()。若使用 isset() 測試一個被設置成 NULL 的變量,將返回 FALSE。(注意的是一個 NULL 字節("\0")并不等同于 PHP 的 NULL 常數)
empty()用來檢查一個變量是否為空。
他們之間最大的區別就是對于0的判斷,若用empty判斷會認為是空,用isset則認為不為空,舉個例子:
<?php var $a=0; //empty($a)返回true if(empty($a)){ echo "判斷結果是空" } //isset($a)返回true if(isset($a)){ echo "判斷結果不是空" } ?>
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。