最近我们迁移到git并在我们的中央服务器上实现(暂时发布)接收Hook以向开发人员发送报告,并制作了几个工具使我们能够在我们的开发环境中使用phpcs自动检查我们的代码标准。这一切都很好,花花公子,运行良好,但我们希望能够始终依赖于我们的代码标准,而不是忽略每个因逻辑原因不符合的文件。现在,我们有自己的规则集,它覆盖了默认PEAR标准中的一些内容,但如果可能的话,我们想更进一步。我们的问题是,虽然PEAR标准对于所有类/业务逻辑都是完美的,但在View文件中,我们希望放宽规则,例如,右括号需要在自己的行上。问题是我们主要在这些文件中定义html,我们拥有的唯一控制结构是简单的if-el
我也花了几个小时在谷歌上搜索答案,然后再问,在phpcs中我有这个错误“未指定PHP版本”,但我在谷歌上找不到答案,最终我遇到了这个“PHP版本5”清除了错误,但我感到困惑,因为PHP5已过时,我使用的是PHP7.2.10。如果有人能阐明这一点,我将不胜感激,非常感谢。编辑:我刚刚在顶部添加了@行,它打破了“PHP版本5”,因为它说“未指定PHP版本”。@类别@包@作者@许可证@链接PHP版本5 最佳答案 "phpversion"所有的字母都是小写*php版本7.2.10*必须放在@tags之前
我正在尝试运行PHPCodeSniffer,但出现错误。PHPCodeSnifferphpcs:Cannotcorrectlyrunthetoolwithparameters:C:/Users/me/AppData/Local/Temp/___0.tmp/Foo.class.php--standard=PSR2--encoding=utf-8--report=xmlPossibletoolprocesshangupafter5sec.我认为这与文件位置有关。我的文件不在Temp中。但是,我看不到设置默认文件夹的地方 最佳答案 您需要
我试图以某种方式说服phpcs使用Zend编码指南,但允许我使用带下划线的变量(例如$blub->foo_bar)。谁能告诉我如何从PHPStorm中更改phpcs使用的规则集? 最佳答案 如果您想覆盖内置编码标准,则需要创建自定义编码标准。这只是创建一个包含标准定义的XML文件的问题。在您的情况下,您需要整个Zend编码标准,但不需要关于变量名称的特定命名约定规则。因此,您将创建一个名为mystandard.xml的文件(将其命名为任何您想要的名称并将其放在任何您想要的位置)并放入以下内容:MycustomZendcodingst
我已将PHPStorm设置为使用phpcs,并在我违反样式时在IDE中显示给我。但是,我想为View文件禁用此功能——它们通常包含一些PHP和HTML的混合,不符合样式指南,我不关心View文件。在选项中,我在phpcs设置中看到了排除文件列表,但它只有用于删除文件或清除整个列表的按钮,但无法向其中添加文件。我是不是哪里遗漏了它? 最佳答案 代码嗅探器(以及MessDetector)集成以检查的形式实现,可以根据范围将其配置为打开或关闭。因此:设置|Scopes--创建新的自定义范围并包括所有不需要的文件/文件夹设置|检查|PHP|
我现在已经花了2个多小时试图弄清楚如何在方法声明的同一行中要求{,而不是默认要求在下一行。我怎样才能完成这个?我已将PSR2标准复制到一个名为PSR2的新文件夹中,以便能够根据自己的喜好对其进行修改。所以我正在研究的基础基本上是我想修改的PSR2标准。ruleset.xml我试过了,直接在代码里修改也没成功。我已经发现这是错误的。EOL由phpcs设置。但我无法弄清楚是否存在可以通过规则配置的值。到目前为止这对我来说很好用(去他妈的愚蠢的空格!!!):PSR2withtabsinsteadofspaces.但我想在上面添加规则。 最佳答案
我在VisualStudioCode中遇到了这个问题。我已经尝试重新安装phpcs扩展,但仍然面临这个问题。UnabletolocatephpcsPleaseaddphpcstoyourglobalpathorusethecomposerdependencymanagertoinstallitinyourprojectlocallyinVisualstudioCode 最佳答案 我遇到了同样的问题,我做了以下修复:使用composer和composerglobalrequiresquizlabs/php_codesniffer安装p
我的TestMyClass.php在同一个文件(单元测试类)中有两个类定义,PHPCodeSniffer提示每个类必须单独在一个文件中.我怎样才能抑制这个警告?classMyClassImplimplementsMyInterface{//...}classMyClassTestextends\PHPUnit_Framework_TestCase{//...} 最佳答案 您可以使用注释让PHP_CodeSniffer忽略特定文件或文件中的行:https://github.com/squizlabs/PHP_CodeSniffer