💡
原文英文,约400词,阅读约需2分钟。
📝
内容提要
在使用SonarCloud和PHPMD限制类中公共方法数量时,PHPMD默认忽略以get、set、is、has、with开头的方法,导致SonarCloud标记更多问题。为确保所有方法都被计算,需要在PHPMD中设置正则表达式为(!)i,以保持一致性。
🎯
关键要点
- 在使用SonarCloud和PHPMD限制公共方法数量时,PHPMD默认忽略以get、set、is、has、with开头的方法。
- SonarCloud标记的问题数量比PHPMD多,因为SonarCloud不忽略这些方法。
- PHPMD的默认行为是使用正则表达式忽略特定前缀的方法。
- 为了确保所有方法都被计算,需要在PHPMD中设置正则表达式为(!)i。
- 通过设置正则表达式,PHPMD和SonarCloud的规则执行变得一致。
- PHPMD的文档没有完全说明其默认规则,可能会导致误解。
- 不同工具的行为可能不同,即使它们看似检查相同的内容。
- 使用正则表达式可以确保PHPMD计算所有方法,避免遗漏。
❓
延伸问答
PHPMD和SonarCloud在公共方法数量限制上有什么不同?
PHPMD默认忽略以get、set、is、has、with开头的方法,而SonarCloud则不忽略这些方法,因此标记的问题数量更多。
如何确保PHPMD和SonarCloud的一致性?
需要在PHPMD中设置正则表达式为(!)i,以确保所有方法都被计算。
PHPMD的默认行为是什么?
PHPMD默认使用正则表达式忽略以特定前缀开头的方法,具体包括get、set、is、has和with。
为什么SonarCloud会标记更多问题?
因为SonarCloud不忽略以特定前缀开头的方法,而PHPMD会忽略这些方法。
如何配置PHPMD以计算所有方法?
可以通过设置ignorepattern为(!)i来配置PHPMD,以确保不忽略任何方法。
PHPMD的文档是否完整?
PHPMD的文档没有完全说明其默认规则,可能会导致用户误解。
➡️