4

我正在寻找 PHPCodeSniffer 规则来限制每个函数/方法的最大代码行数。

function something($b) {
    // some comment that should be ignored in the count
    $a = 12;

    $value = sqrt(
        $a * $b
    );

    return $value;
}

我希望将上述函数计为有 5 行编码(不包括注释和空行)。

4

2 回答 2

4

我认为 PHPCodeSniffer (phpcs) 没有“代码行”的标准规则,我所能想到的就是使用另一个指标,例如 McCabe Cyclomatic Complexity(这包括在 Sniff 中Generic.Metrics.CyclomaticComplexity)。它不一样,但高价值是杂乱代码的指标。

如果您愿意使用另一个名为PHP Mess Detector (phpmd)的工具,您可以使用该ExcessiveMethodLength规则来跟踪方法的最大长度。

于 2016-04-11T21:26:02.423 回答
1

您正在ObjectCalisthenics 编码标准中寻找嗅探。

它可以限制 4 个指标

  • 类(以及特征、接口)的行长
  • 方法(函数)的行长
  • 类中的属性计数
  • 类中的方法计数
于 2017-05-02T22:15:53.290 回答