empty能否代替isset?

2022-07-20 20:09:18 字數 729 閱讀 5175

我覺得empty可以覆蓋isset!

empty:檢查乙個變數是否為空:

""0"0"nullfalsearray()var   $var;var   都為true

isset:檢測變數是否設定:

null, 即:變數未設定,返回false; 變數為null,返回false

如果乙個變數未設定時,empty返回什麼結果呢?如下:

var_dump(empty($undefined)); //true

可見empty也可以起到檢測變數是否設定的目的。那麼該不該使用empty代替isset呢?

如果僅僅是判斷乙個變數存不存在,那麼該使用isset,因為isset的含義很清晰,就是幹這個用的,也利於對**的閱讀。

當既要判斷變數存在,又有判斷變數不為0,'',空陣列等情況,可以用

if(!empty($var))  代替   if(isset($var) && !empty($var))

注意:這兩個不是函式是語句,5.5之前不可以empty裡面套函式,而5.5之後可以!

isset 和empty 的區別

php的isset 函式 一般用來檢測變數是否設定 格式 bool isset mixed var mixed var 功能 檢測變數是否設定 返回值 若變數不存在則返回 false 若變數存在且其值為null,也返回 false 若變數存在且值不為null,則返回 ture 同時檢查多個變數時,每...

empty 和isset 的區別

在使用 php 編寫頁面程式時,我經常使用變數處理函式判斷 php 頁面尾部引數的某個變數值是否為空,開始的時候我習慣了使用 empty 函式,卻發現了一些問題,因此改用 isset 函式,問題不再。顧名思義,empty 判斷乙個變數是否為 空 isset 判斷乙個變數是否已經設定。正是這種所謂的 ...

empty 和isset的區別

empty是判斷乙個變數是否為空,如果 變數 是非空或非零的值,則 empty 返回 false。換句話說,0 0 null false array var var 未定義 以及沒有任何屬性的物件都將被認為是空的,如果 var 為空,則返回 true。1 數字0 2 空的字元 3 定義為null的變...