$id=null;if (empty($id)) { ? ?echo 1;}else { ? ?echo 2;}print'<br>';if (!isset($id)) { ? ?echo 1;}else { ? ?echo 2;}結(jié)果怎么為:1 ?1呢?百思不得其解。
2 回答
已采納

野生碼農(nóng)在線co腚
TA貢獻(xiàn)134條經(jīng)驗 獲得超63個贊
empty()函數(shù)是用來測試變量是否已經(jīng)配置。若變量已存在、非空字符串或者非零,則返回 false 值;反之返回 true值。
以下的東西被認(rèn)為是空的:
"" (空字符串)
0 (作為整數(shù)的0)
0.0 (作為浮點(diǎn)數(shù)的0)
"0" (作為字符串的0)
NULL
FALSE
array() (一個空數(shù)組)
$var; (一個聲明了,但是沒有值的變量)
所以第一個echo 1.
isset ()檢測變量是否設(shè)置,并且不是 NULL。返回值 :如果 var 存在并且值不是 NULL 則返回 TRUE,否則返回 FALSE。
簡單的來說,empty()函數(shù)如果要檢測的變量是空則返回true.isset()要檢測的變量是空,則返回false. 第二個if語句里面還有個非! 所以 同樣走第一步 echo 1
- 2 回答
- 1 關(guān)注
- 1529 瀏覽
添加回答
舉報
0/150
提交
取消