1. Home
  2. /
  3. Web technology
  4. /
  5. PHP
  6. /
  7. [ PHP ] –...

[ PHP ] – isset() 與 empty() 與 is_null 差異

評等結果
點擊便能為這篇文章進行評等!
[評等總次數: 0,平均評等: 0]

isset() 與 empty() 與 is_null 這篇主要是比較這三個判斷函式他們之間的差異性;請看以下程式範例。

$check=array(true,null,12345,'12345abc','');
echo ' array(true,null,12345,\'12345abc\',\'\') <br>';
foreach($check as $value){
	echo '( '.gettype($value).' ) '.$value.' isset   ? : '.(isset($value)  ?'TRUE':'FALSE').'<br>';
	echo '( '.gettype($value).' ) '.$value.' empty   ? : '.(empty($value)  ?'TRUE':'FALSE').'<br>';
	echo '( '.gettype($value).' ) '.$value.' is_null ? : '.(is_null($value)?'TRUE':'FALSE').'<br>';
}
//PHP 有個特性 在使用 is_xxx 函式時,若直接echo 判斷結果 true 的話 會輸出 1 false 則是 空字串
//所以我們要在判斷式後面自行加上不同結果所要回傳的字串 'TRUE':'FALSE'
//gettype 函式為取得變數型態
//isset()   檢查變數是否有設置
//empty()   檢查變數是否為空值
//is_null() 檢查變數是否為null
//顯示結果
/*
array(true,null,12345,'12345abc','')
( boolean ) 1 isset ? : TRUE
( boolean ) 1 empty ? : FALSE
( boolean ) 1 is_null ? : FALSE
( NULL ) isset ? : FALSE
( NULL ) empty ? : TRUE
( NULL ) is_null ? : TRUE
( integer ) 12345 isset ? : TRUE
( integer ) 12345 empty ? : FALSE
( integer ) 12345 is_null ? : FALSE
( string ) 12345abc isset ? : TRUE
( string ) 12345abc empty ? : FALSE
( string ) 12345abc is_null ? : FALSE
( string ) isset ? : TRUE
( string ) empty ? : TRUE
( string ) is_null ? : FALSE
*/

評等結果
點擊便能為這篇文章進行評等!
[評等總次數: 0,平均評等: 0]

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *