今天在利用empty()函數判斷一個變量是否為null是發現提示Note: empty() only checks variables as anything else will result in a parse error. In other words, the following will not work:empty(trim($name)).錯誤了,後整一半天找到問題所在了。
你使用empty檢查一個函數返回的結果時會報如下的一個致命錯誤:
Fatal error: Can't use function return value in write context in : ..................
例如:
echo empty(yourfunction(xx, oo));
到PHP手冊裡面查看,在empty函數描述的地方有以下文字:
Note: empty() only checks variables as anything else will result in a parse error. In other words, the following will not work:empty(trim($name)).
empty() 只檢測變量,檢測任何非變量的東西都將導致解析錯誤!
因此,我們不能拿empty來直接檢測函數返回的值,需要先把函數的返回值賦給某個變量,然後去用empty檢測這個變量。
所以,我們可以寫成如下的形式:
$return= yourfunction(xx, oo);
echo empty(return);