【问题标题】:PHP coding standards - Visual Studio codePHP 编码标准 - Visual Studio 代码
【发布时间】:2018-05-24 17:00:07
【问题描述】:

我正在尝试为 phpcs 实现其他编码标准。目前,我已经为 Visual Studio 代码设置了 phpcs,并且我有以下编码标准

current/path> phpcs -i
The installed coding standards are MySource, PEAR, PSR1, PSR2, Squiz and Zend

我想设置此处列出的其他标准:php-fig

例如PSR4

如何为我的开发设置这些标准?

【问题讨论】:

  • PHPCS 强制执行编码风格标准,如 PSR-1 和 PSR-2。 PSR-4 是一个自动加载标准,PHPCS 将无法强制执行这一点。所以你已经正确安装了 PHPCS,但是你需要使用不同的工具添加对其他 PSR 的支持(我不确定是哪些工具)。

标签: php visual-studio-code phpcs


【解决方案1】:

用一个例子扩展@Vladd 的答案。

假设我们要启用来自 this repo 的 WordPress 编码标准。我们可以按照以下步骤进行:

  1. 下载文件并将其保存到本地目录。出于某种原因,我希望它与默认 phpcs 标准(全局安装)位于同一文件夹中。所以我把它保存到:C:\Users\USER_NAME\AppData\Roaming\Composer\vendor\wpcs

  2. 如果您有 git 设置,您可以通过访问文件夹(供应商)直接将 repo 克隆到此文件夹,按 shift+右键单击并单击“在此处打开命令窗口”。加载命令提示符后,只需粘贴以下代码:

    git clone -b master https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards.git wpcs

    这会将标准克隆到供应商文件夹中名为 wpcs 的文件夹中。

  3. 一旦您下载了标准,您需要让 phpcs 知道在哪里可以找到新标准。这是通过以下命令完成的:

    phpcs --config-set installed_paths C:\Users\USER_NAME\AppData\Roaming\Composer\vendor\wpcs

    确保更改下载标准的路径。

  4. 您可以使用phpcs -i 命令交叉检查所有已安装的编码标准。您应该会看到以下结果:

    The installed coding standards are MySource, PEAR, PSR1, PSR2, Squiz, Zend, WordPress, WordPress-Core, WordPress-Docs, WordPress-Extra and WordPress-VIP

  5. 您现在可以启用您希望用于您的项目的标准。例如。如果我想从默认标准切换到 wordpress,我会使用以下命令:

    phpcs --config-set default_standard wordpress

【讨论】:

    【解决方案2】:

    您可以使用以下命令设置 phpcs 使用的 default_standard:

    phpcs --config-set default_standard <value>
    

    或者当从项目的根目录使用 composer 依赖管理器时,发出以下命令:

    ./vendor/bin/phpcs --config-set default_standard <value>
    

    请记住,PS4 是自动加载标准,而不是编码标准。

    您可以创建一个自定义的、您自己的编码标准,然后您可以尝试安装您的自定义编码标准:

    phpcs --config-set installed_paths <path/to/custom/coding/standard>
    

    或者当从项目的根目录使用 composer 依赖管理器时,发出以下命令:

    ./vendor/bin/phpcs --config-set installed_paths <path/to/custom/coding/standard> 
    

    希望对你有帮助。

    【讨论】:

    • 我希望我当时有这个答案,可以节省我几个小时。无论如何,我确实了解了有关该主题的更多信息,@Greg Sherwood 的回复也有所帮助。我将此标记为最佳答案,并提供我自己的答案作为示例。
    猜你喜欢
    • 1970-01-01
    • 2010-10-16
    • 2016-12-26
    • 1970-01-01
    • 2012-10-16
    • 1970-01-01
    • 2021-03-28
    • 1970-01-01
    • 2020-07-11
    相关资源
    最近更新 更多