我会尽量保持这个简单。我做了测试一些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