我會盡量保持這個簡單。我做了測試一些TWP功能:哪種方式更有效率?
//user valid
function validusr(){
return true;//or false, depends
}
//user in db
function indbusr(){
return true;//or false, depends
}
後來,我有這個
if (!validusr($myval)) return validusr($myval);
else if (!indbusr($myval)) return indbusr($myval);
else return true;
然而,這似乎不太好是因爲我調用函數2次:第一次測試$myval
,以及一次當我返回它。但是,如果我說,存儲這樣的值:
$result1=validusr($myval);
$result2=indbusr($myval);
if (!$result1) return $result1;
else if (!$result2) return $result2;
else return true;
可能有情況下,當第二個語句從未運行,因爲第一個將永遠是真實的,這使得調用第二功能形同虛設。
那麼,哪一個更有效?存儲該值並冒其不被使用的風險,或僅在需要時調用該函數兩次?
所以你必須對大括號的東西嗎? – 2014-10-08 22:04:10
你可以計算只是在'else'子句中的第二個值... – Sirko 2014-10-08 22:04:18
@Sirko爲什麼我沒有想到的是......謝謝。 – 2014-10-08 22:05:09