用3种可能性编写if结构(或开关或case或w / e)的最佳方法是什么。
if($tekst!=''){
$qry="tekst filled in";
}
elseif($aantal!=''){
$qry="aantal filled in";
}
elseif($aantal!=''&&$tekst!='')
{
$qry="both filled in";
}
答案 0 :(得分:2)
这不适合stackoverflow。你的问题可能会是 关闭。我只是警告你
......只是想要编码风格建议的人......
由于组合检查,switch语句无法使用($ aantal!=''&& $ tekst!='')。 所以if / else语句是你最好的选择(imho)。 不过我会把它写成:
if($aantal && $tekst) {
$qry="both filled in";
}
else if($tekst) {
$qry="tekst filled in";
}
else if($aantal) {
$qry="aantal filled in";
}
我个人认为这种方式更具可读性。
注意:在发布问题之前,请将本地化敏感文本写入英语。
答案 1 :(得分:0)
在什么意义上最优?
一个想法是:
var r = [ [ undefined, "tekst filled in" ],
[ "aantal filled in", "both filled in" ]];
$qry = r[+($aantal!='')][+($tekst!='')];
+
-operator用于将'false'评估为0,将'true'评估为1以进行索引。
R也可以定义为具有键'true'和'false'的对象:
r = { "true" : { "true": "Both filled in", "false": "tekst filled in" },
"false" : { "true": "aantal filled in" } };
$ qry = r [$ aantal!=''] [$ tekst!=''];
答案 2 :(得分:0)
if(something) {
...
}
else if(something-else-specific) { /* other specific case */
...
}
else { /* any other cases*/
...
}
这就是全部。