我正在尝试为PHP CodeSniffer设置一个规则集,以便在一组开发人员中强制执行代码风格,但我遇到了一些麻烦.
除了关于两件事之外,我们想要坚持PSR-2.我们希望类声明在同一行上具有开括号,对于函数也是如此.第一个我已经设法修复,但功能的同一行上的开括号的错误不会消失.
我已经跟踪了它的嗅觉Generic.Functions.OpeningFunctionBrace.BsdAllman和错误BraceOnSameLine但是将这个排除添加到我的规则集什么也没做.
我的规则集如下所示:
<?xml version="1.0"?>
<ruleset name="OrgXYZ">
<description>The coding standard for Organization XYZ.</description>
<rule ref="PSR2">
<exclude name="PSR2.Classes.ClassDeclaration.OpenBraceNewLine"/>
<exclude name="Generic.Functions.OpeningFunctionBraceBsdAllman.BraceOnSameLine"/>
</rule>
</ruleset>
Run Code Online (Sandbox Code Playgroud)
我试图从报告中删除的消息是这样的:
15 | ERROR | Opening brace should be on a new line
Run Code Online (Sandbox Code Playgroud)
这是我对自己的规则集的第一次尝试,我在这里真的很茫然.我用Google搜索,搜索并尝试了一切.
发现了问题.我迷失在PSR2规则集中包含的内容并排除了错误的内容.添加此解决了它:
<exclude name="Squiz.Functions.MultiLineFunctionDeclaration.BraceOnSameLine"/>
Run Code Online (Sandbox Code Playgroud)