【问题标题】:how to set custom rule for unused variable and method in php code sinffer?如何在 php 代码嗅探器中为未使用的变量和方法设置自定义规则?
【发布时间】:2017-05-03 15:10:49
【问题描述】:

我在 smyfony 3.1 中使用 php 代码嗅探器。

包名:Squiz 我正在尝试在基于 symfony 的项目中运行 phpcs 命令。

命令:

phpcs --standard=/c/xampp/php/pear/PHP/CodeSniffer/Standards/Squiz  src/MYBundle/Controller/MYController.php  

命令工作正常,在这个控制器/类中,我声明了一些私有变量和方法名称,它们在控制器/类的任何地方都没有使用。

规则集

我在 ruleset.xml 文件中添加了新规则,并在此目录下创建了新文件 [Sniffs\Rule\UnusedPrivateField] UnusedPrivateField.php

<rule name="UnusedPrivateField"
          since="0.2"
          message="Avoid unused private fields such as '{0}'."
          class="Sniffs\Rule\UnusedPrivateField"
          externalInfoUrl="http://phpmd.org/rules/unusedcode.html#unusedprivatefield"></rule>

问题: 如何从新规则集中调用“UnusedPrivateField.php”代码?

【问题讨论】:

  • 您的规则标签的格式看起来不像任何 PHPCS 示例之一,所以我不确定您为什么要这样写。有什么特别的原因吗?此外,您实际上不需要包含存在于标准的 Sniffs 文件夹下的嗅探规则标签 - PHPCS 将自动导入它们(使用 phpcs -vv 来查看规则集是如何解析的)。但是你没有说你把嗅探放在哪个Sniffs文件夹下——它是在Squiz/Sniffs下吗?当 PHPCS 需要两个 (Sniffs/CategoryName/SniffName.php) 时,您似乎还说您有一个 3 文件夹结构。我想我需要更多信息来提供帮助。

标签: php symfony-3.1 phpcs


【解决方案1】:

您可以为此使用UnusedPrivateElementsSniff

我用了一年多了,效果很好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-01
    • 2015-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多