我刚刚升级到netbeans 7.4,他们有一个代码提示功能,但他们最近添加了一个让我感到困惑的提示规则。 “If-Else语句必须使用大括号”,这是一个新的php标准吗?我通常不添加括号,除非它超过一行(例如下面的例子)。我知道不使用括号可能会让它更加混乱,但我认为在某些情况下它看起来很优雅......这是所有IDE都采用的路线吗?
if($auth==1){
// Do a bunch of
// stuff.
}else
header('Location: /403/index.html');
答案 0 :(得分:2)
这是一个新的php标准吗?
不是真的。这完全取决于用户。如果您愿意,可以在代码中使用它 - 这是您的编码风格。但是,Zend Coding标准要求您对所有if
,else
,elseif
构造使用大括号:
PHP允许在某些情况下不使用大括号编写语句。这种编码标准没有区别 - 所有“if”,“elseif”或“else”语句都必须使用大括号。
据我所知,不使用括号可能会让它更加混乱,但我认为在某些情况下它看起来很优雅
如果if
块包含多个条件,则最好使用大括号。比方说,例如:
if ($auth) {
doStuff();
anotherOne();
}
但是,如果您的代码只有一个条件,您可以不用括号编写它。例如:
if(is_numeric($n)) echo 'Foo';
对于非常简短的语句,没有必要使用大括号,但如果您的代码涉及多个条件,或者您正在编写另一个开发人员将要重用的代码,那么最好将它们包装在大括号中。这样,在将来查看代码时就不会有任何混淆。
答案 1 :(得分:0)
是的,这是一种防止开发人员犯错的方法,下次他们更改代码并添加另一个语句时。
这也是一个暗示性的特征,而不是规则。
默认情况下,所有IDE都实现了此功能(Visual Studio,Netbeans,Eclipse是其中的一些示例),尽管这不是语言编译器强加的规则。