[php]empty()||isset()||var $foo 數據處理判斷

    PHP作後端數據處理的時候,常常須要對數據是否爲[""/"0"/0/FALSE/NULL/array()/var $foo]等狀態進行判斷,最常使用的是empty() || isset(),這兩個函數的區別比較明顯,PHP手冊上的定義是這樣的:php

    isset():檢測變量是否設置,而且不是 NULLshell

    

    empty():若是 var 是非空或非零的值,則 empty() 返回 FALSE後端

        

    其中要注意的是empty()對0的處理,當變量數值爲0時,empty返回true,則所判斷數值包含0時,必須選擇isset()
函數

    二者能夠配合使用,如 判斷一個變量 有定義 而且 不爲空[empty對未定義的變量返回true=>empty()不能肯定變量是否已定義]性能

    

    有時候爲了代碼的簡潔咱們直接使用變量進行判斷 spa

if($_GET['var']) echo 'the test code';

    但這時若是PHP沒有接收到$_GET['var']值的時候,會產生一個notice錯誤{empty則不會有這種狀況[empty()當變量沒有置值時不產生警告]}code

PHP Notice:  Undefined index: var in php shell code on line 1

    記錄notice會產生開銷,所以對PHP的性能也會有影響it

相關文章
相關標籤/搜索