我需要知道是否允许根据 PSR-2 编码风格使用单行 if 语句。
我已经阅读了文档,但找不到任何相关信息。
https://www.php-fig.org/psr/psr-1/
https://www.php-fig.org/psr/psr-2/
<?php
// This is fine
if ($expr)
{
echo $expr;
}
// This also?
if ($expr) { echo $expr; }
?>
我需要知道是否允许根据 PSR-2 编码风格使用单行 if 语句。
我已经阅读了文档,但找不到任何相关信息。
https://www.php-fig.org/psr/psr-1/
https://www.php-fig.org/psr/psr-2/
<?php
// This is fine
if ($expr)
{
echo $expr;
}
// This also?
if ($expr) { echo $expr; }
?>
不,有明确的说:
“if 结构如下所示。注意括号、空格和大括号的位置;else 和 elseif 与前面正文的右大括号位于同一行。”
https://www.php-fig.org/psr/psr-2/#51-if-elseif-else
所以第一个变体是可以的,第二个不是。
PS 实际上,在您的示例中,第二种情况看起来不错,但是在更大的情况下,在现实生活中它的可读性较差,因此我们需要遵守奇异的第一种方法