加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

使用PHPStorm的phpcs自定义规则集

发布时间:2020-12-13 18:27:37 所属栏目:PHP教程 来源:网络整理
导读:我试图以某种方式说服phpcs使用Zend编码指南,但是 – 允许我使用下划线的变量(如$blub- foo_bar). 有人能告诉我如何更改phpcs在PHPStorm中使用的规则集吗? 如果要覆盖内置编码标准,则需要创建自定义编码标准.这只是创建一个带有标准定义的XML文件的问题. 在
我试图以某种方式说服phpcs使用Zend编码指南,但是 – 允许我使用下划线的变量(如$blub-> foo_bar).

有人能告诉我如何更改phpcs在PHPStorm中使用的规则集吗?

如果要覆盖内置编码标准,则需要创建自定义编码标准.这只是创建一个带有标准定义的XML文件的问题.

在您的情况下,您需要整个Zend编码标准,但您不希望有关变量名称的特定命名约定规则.因此,您将创建一个名为mystandard.xml的文件(根据需要将其命名并将其放在任何您想要的位置)并输入以下内容:

<?xml version="1.0"?>
<ruleset name="MyStandard">
 <description>My custom Zend coding standard.</description>
 <rule ref="Zend">
  <exclude name="Zend.NamingConventions.ValidVariableName"/>
 </rule>
</ruleset>

您可以做很多事情来定制您的标准,包括从其他标准中引入检查,覆盖消息或将其中一些静音.您可以在这里查看文档:http://pear.php.net/manual/en/package.php.php-codesniffer.annotated-ruleset.php

最后我查了一下,PHPStorm没有让你使用自定义编码标准,无论出于何种原因.通常,您只需输入标准名称作为mystandard.xml文件的完整路径.如果PHPStorm仍然不允许你这样做,那么欺骗它的唯一方法就是实际安装你的自定义标准.

请注意,这不是您通常需要做的事情,而且有点复杂.但是如果你想尝试一下,你就是这样做的:

>查找系统上安装PHPCS的位置.如果您不知道它在哪里,请尝试pear config-show | grep php_dir. PHP_CodeSniffer将在那里的目录中.对我来说,PEAR安装在/usr/local / PEAR中,因此PHP_CodeSniffer位于/usr/local / PEAR / PHP / CodeSniffer
>在/usr/local / PEAR / PHP / CodeSniffer / Standards下创建一个名为MyStandard的新目录
>将mystandard.xml文件直接放在那里,但将其重命名为ruleset.xml

要确认已安装标准,请运行phpcs -i.你应该看到

The installed coding standards are MySource,MyStandard,PEAR,PHPCS,Squiz and Zend

现在,PHPStorm将显示??(希望)MyStandard作为下拉列表中的一个选项.如果它没有出现,那么他们可能已经对列表进行了硬编码,并且没有任何方法可以使其工作而不直接破解Zend编码标准.

我希望这些信息能帮助您找到解决方案.如果没有,您可以使用自定义标准直接在命令行上运行PHPCS:

phpcs --standard=/path/to/mystandard.xml /path/to/code

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读