在PHP中,elseif是否需要最终的else语句?
在PHP的elseif块中省略最后一个else语句可以吗。这个代码行吗在PHP中,elseif是否需要最终的else语句?,php,if-statement,Php,If Statement,在PHP的elseif块中省略最后一个else语句可以吗。这个代码行吗 if ( condition ): // code elseif ( othercondition ): // more code endif; 还是应该在最后有其他的 if ( condition ): // code elseif ( othercondition ): // more code else // more code endif; 我肯定是的,但我哪儿也不能得到证实。编辑-
if ( condition ):
// code
elseif ( othercondition ):
// more code
endif;
还是应该在最后有其他的
if ( condition ):
// code
elseif ( othercondition ):
// more code
else
// more code
endif;
我肯定是的,但我哪儿也不能得到证实。编辑-我已经试过了,但我只是想确定一下。如果你不需要最后的
块,或者-块,不要写。拥有一个不需要的代码块(可能只包含一个这是无用的-注释)是毫无意义的。虽然@oezi的答案是100%正确,但我还要补充一点,就最佳实践而言,else
条件在所有情况下都应该使用。但是,这并不意味着您必须按字面意思使用else
块,因为您可以通过将“else代码”放在if
之前,在逻辑上完成同样的事情。例如:
$foo = 'baz';
if (...) {
$foo = 'foo';
} else if (...) {
$foo = 'bar';
}
…在功能上等同于:
if (...) {
$foo = 'foo';
} else if (...) {
$foo = 'bar';
} else {
$foo = 'baz';
}
我认为在阅读代码时使用else
更为清晰,但任何一种方法都可以。请记住,完全忽略第三种情况是导致错误的常见原因(在某些情况下,甚至是安全漏洞)。您有代码-试试看。@arxanas我不认为尝试它是一种确定的方式,可以知道它是好的,是吗?您可以完全忽略else条件,但从概念上来说,拥有一个总是更好的。@JérômeBoé和Raisch都是错误的。其他人是正确的。@asph-问题是:在PHP中,elseif是否需要一个最终的else语句?-我的回答是:不。-那么告诉我哪里错了。谢谢,这就是我为什么问这个问题的原因,我没有经常看到这样做,所以我想这是有原因的。