首頁 >後端開發 >PHP問題 >php檢查變數是否為空

php檢查變數是否為空

(*-*)浩
(*-*)浩原創
2019-09-25 13:22:582072瀏覽

php檢查變數是否為空

從資料庫中取出值後判斷是否為空,這個看起來很簡單,只要和null比較一下就可以了,其實不然(推薦學習:PHP程式設計從入門到精通

if($obj==null){ 
}

這樣寫會報錯的:Notice: Trying to get property of non-object problem,

查了一下發現需要使用下面的寫法

if (isset($obj)) { 
echo "This var is set set so I will print."; 
}

這個isset是做什麼的呢? 

isset函數是偵測變數是否設定。

格式:bool isset ( mixed var [, mixed var [, ...]] )

回傳值: 

若變數不存在則回傳FALSE 

##若變數存在且其值為NULL,也回傳FALSE 

若變數存在且值不為NULL,則回傳TURE 

同時檢查多個變數時,每個單一項目都符合上一條要求時才回傳TRUE,否則結果為FALSE 

如果已經使用unset() 釋放了一個變數之後,它將不再是isset()。若使用 isset() 測試一個被設定成 NULL 的變量,將會傳回 FALSE。同時要注意的是一個 NULL 位元組(”\0″)並不等同於 PHP 的 NULL 常數。

警告: isset() 只能用於變量,因為傳遞任何其它參數都會造成解析錯誤。若想要偵測常數是否已設置,可使用 defined() 函數。 

看來剛才我那邊的判斷所出的問題,就是因為這個「是 NULL 位元組(」\0″)並不等同於 PHP 的 NULL 常數」。

以上是php檢查變數是否為空的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn