使用 PHP PSR-2 评论 if/else 语句的最佳方式
Best way to comment on if/else statement with PHP PSR-2
在我看来,示例 #2 似乎是更易读的评论方式。
但是如果我将 PSR-2 应用于两个样本,样本 #1 不会改变,但 样本 #2 的结果更改如下,这不是正确的评论。
在这些情况下最好的评论方式是什么?
样本 #1
/* Read cached data */
if ($useCache == true){
// do something
/* Download and cache data */
} else {
// do something
}
样本 #2
/* Read cached data */
if ($useCache == true){
// do something
}
/* Download and cache data */
else {
// do something
}
样本 #2 的 PSR-2 结果
/* Read cached data */
if ($useCache == true){
// do something
} /* Download and cache data */
else {
// do something
}
结论 2017/12/13
到目前为止,最好的方法似乎如下:
将它们标记为在括号内
if ($useCache == true){
/* Read cached data */
// do something
}
else {
/* Download and cache data */
// do something
}
PSR-2 没有解决如何有意发表评论或屏蔽评论,所以你可以随心所欲。
There are many elements of style and practice intentionally omitted by
this guide. These include but are not limited to:
- Declaration of global variables and global constants
- Declaration of functions Operators and assignment
- Inter-line alignment
- Comments and documentation blocks
- Class name prefixes and suffixes
参考:http://www.php-fig.org/psr/psr-2/#conclusion
然而,根据 PSR-2,左大括号应与 if()
条件由 space 字符分隔,并且 else
应在同一行并且在前面的右大括号旁边,像这样:
<?php
if ($expr1) {
// if body
} elseif ($expr2) {
// elseif body
} else {
// else body;
}
参考:http://www.php-fig.org/psr/psr-2/#51-if-elseif-else
恕我直言,你的评论是相对于 else
块内所做的事情是一个很好的理由,为什么它应该放在 inside 该块(仅功能, 类 和顶级构造有权在它们之上提取一个文档块),所以我倾向于同意 Ibu 在这方面的评论(如果你在某个时候编辑或删除 else 块,该块评论也应该更新)。
@Ibu 确实。正如@Calimero所说,它可能是这样的?
if ($useCache == true){
/* Read cached data */
// do something
} else {
/* Download and cache data */
// do something
}
在我看来,示例 #2 似乎是更易读的评论方式。
但是如果我将 PSR-2 应用于两个样本,样本 #1 不会改变,但 样本 #2 的结果更改如下,这不是正确的评论。
在这些情况下最好的评论方式是什么?
样本 #1/* Read cached data */
if ($useCache == true){
// do something
/* Download and cache data */
} else {
// do something
}
样本 #2
/* Read cached data */
if ($useCache == true){
// do something
}
/* Download and cache data */
else {
// do something
}
样本 #2 的 PSR-2 结果
/* Read cached data */
if ($useCache == true){
// do something
} /* Download and cache data */
else {
// do something
}
结论 2017/12/13
到目前为止,最好的方法似乎如下: 将它们标记为在括号内
if ($useCache == true){
/* Read cached data */
// do something
}
else {
/* Download and cache data */
// do something
}
PSR-2 没有解决如何有意发表评论或屏蔽评论,所以你可以随心所欲。
There are many elements of style and practice intentionally omitted by this guide. These include but are not limited to:
- Declaration of global variables and global constants
- Declaration of functions Operators and assignment
- Inter-line alignment
- Comments and documentation blocks
- Class name prefixes and suffixes
参考:http://www.php-fig.org/psr/psr-2/#conclusion
然而,根据 PSR-2,左大括号应与 if()
条件由 space 字符分隔,并且 else
应在同一行并且在前面的右大括号旁边,像这样:
<?php
if ($expr1) {
// if body
} elseif ($expr2) {
// elseif body
} else {
// else body;
}
参考:http://www.php-fig.org/psr/psr-2/#51-if-elseif-else
恕我直言,你的评论是相对于 else
块内所做的事情是一个很好的理由,为什么它应该放在 inside 该块(仅功能, 类 和顶级构造有权在它们之上提取一个文档块),所以我倾向于同意 Ibu 在这方面的评论(如果你在某个时候编辑或删除 else 块,该块评论也应该更新)。
@Ibu 确实。正如@Calimero所说,它可能是这样的?
if ($useCache == true){
/* Read cached data */
// do something
} else {
/* Download and cache data */
// do something
}