2013-07-19 74 views
2

由於isset似乎是一個函數(http://php.net/manual/en/function.isset.php),可能有一些開銷調用它。所以我想如果使用!== null代替isset會產生更快的代碼,同時,最重要的是,保持代碼的行爲完全一樣?是否isset()函數和!== NULL等同?

+0

引發任何不必要的通知'isset'是一個語言結構,不是一個函數。 – Joey

+1

他們不一樣。如果未設置您的變量,'isset'不會產生一個警告 - 你實際上是說,通過使用該功能,這是好的。如果你使用'!==',那麼如果變量沒有設置,你會得到一個警告。 – halfer

+0

deceze寫道[這篇文章](http://kunststube.net/isset/)上'isset','empty','!$ var'和所有......讀得充分理解的差異,pitfals –

回答

0

isset不是函數,它是PHP中的Language construct,它速度更快。

isset確定是否變量被設置,而不是NULL。

1

約$富= NULL是什麼,一個變量可以設置,而且也爲空

0

如上所述是檢查變量是否被設置並且不是NULL。爲了確保我通常把它作爲

if(isset($var) === TRUE) 
{ 
// Do what you want 
} 

這並不在PHP

+0

有不需要檢查TRUE。 isset如果var存在並且具有非NULL值,則返回TRUE;否則返回FALSE。 –