【问题标题】:how do you edit the default php linter for vscode?你如何编辑 vscode 的默认 php linter?
【发布时间】:2017-03-07 10:08:16
【问题描述】:

对于 JS,ESLint 具有为赋值或定义但从未使用的变量返回错误的功能。即

file: 'file:///home/mov-list.js'
severity: 'Error'
message: ''bar' is defined but never used. (no-unused-vars)'
at: '11,5'
source: 'eslint'  

|

file: 'file:///home/ajax222/mov-list.js'
severity: 'Error'
message: ''foo' is assigned a value but never used. (no-unused-vars)'
at: '20,5'
source: 'eslint'

从这里开始:https://code.visualstudio.com/docs/languages/php。 Vscode 附带一个默认的 PHP linter。

问题:我应该将哪个文件和什么代码添加到默认的 PHP linter 以返回两者的错误:
1. 声明但从未使用过的变量。
2. 变量赋值但从未使用过。
就像它与 ESlint 一起工作一样。
还是我应该只关注其他特定的 PHP 短绒?

【问题讨论】:

    标签: php visual-studio-code


    【解决方案1】:

    正如here 解释的那样,VS Code 默认使用默认的 php linter。如果您想对官方的 php linter 进行改进,可以联系 php 开发者on github。

    vscode 市场上还有另外两种 linter,一种使用 php code sniffer,另一种使用 php md。

    Phpmd 应该按照here 的描述捕获您想要的内容,但您也可以创建custom rules:

    未使用的代码规则

    UnusedPrivateField:检测何时声明和/或分配了值但未使用的私有字段。

    UnusedLocalVariable:检测何时声明和/或分配了局部变量,但未使用。

    UnusedPrivateMethod:未使用的私有方法检测何时声明了私有方法但未使用。

    UnusedFormalParameter:避免将参数传递给方法或构造函数,然后不使用这些参数。

    如果您不喜欢 phpmd 并且代码嗅探器 linter 不能满足您的需求,也可以按照 here 的描述对其进行扩展。

    【讨论】:

    • 我花时间阅读了您的建议,这听起来很有希望....尤其是 (php md)。尽管我在谷歌上读了几篇文章,但就一致性而言,之前运行两个 linter 并不是一个好的做法。我只是不知道我是否可以同时拥有它,即运行官方的 php linter,但也享受 php md 附带的功能...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-29
    • 1970-01-01
    • 2016-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多