2013-11-26 83 views
0

我嘗試檢查userFunc是否不正確。userfunc檢查是否爲真[userFunc!= user_myfunc]

它與ELSE:

[userFunc = user_myfunc] 
    #function returns true 
[ELSE] 
    #function returns false 
[end] 

但我真的希望是:(不行!)

[userFunc != user_myfunc] 
    #function returns false 
[end] 

是否有可能做這樣的事情?

我想這樣做的原因是:我想檢查myfunc是否爲false,myfunc2是否爲true。事情是這樣的:

[userFunc != user_myfunc] && [userFunc = user_myfunc2] 
    #user_myfunc returns false & user_myfunc2 returns true 
[end] 
+0

要否定一個條件,你必須使用[狀態] [ELSE]的東西[結束] – pgampe

回答

1

我加入了「不」參數,我的功能解決了這個問題。

[userFunc != user_myfunc] 

越來越:

[userFunc = user_myfunc(not)] 

,並在函數中我做的:

if($not=="not") { // $not is the parameter of the function 
     return !$returnvalue; // so is the parameter set to "not" I return the oposide. 
    } else { 
     return $returnvalue; 
    } 
1
+0

我不確定這是否100%正確。在同一頁上搜索'!=',你會發現一些「不相等」的例子。我嘗試了不同的方式,例如:'[userFunc =!= user_myfunc]'和'[userFunc = user_myfunc,!= true]'。也許這是不可能與一個userFunc .. – nbar

+0

我也認爲只有'='是可能的,因爲它是你的函數,應該返回'TRUE'或'FALSE',從而控制是否使用條件語句。 – tmt

+0

@cascaval我現在認爲,userFunc中的'='不是一個運算符,它只是一個字符。該功能本身被視爲條件。所以你是對的,函數的返回值被視爲條件而不將返回值與其他值進行比較。 – nbar