egosun/symfony-4-code-sniffer

为 Symfony3 项目定制的 CodeSniffer 规则集

这个包的官方仓库似乎已消失,因此该包已被冻结。

安装次数: 2,492

依赖者: 0

建议者: 0

安全: 0

类型:编码标准

0.0.3 2018-12-11 11:07 UTC

This package is auto-updated.

Last update: 2023-06-12 01:53:42 UTC


README

这是对 https://github.com/djoos/Symfony2-coding-standard 的分支,这些是 Symfony2 标准,但根据我们在 CSB 项目的需求进行了调整,例如为了符合 PSR-12 对于 PHP 7 的要求

安装

Composer

此标准可以通过 Composer 依赖管理器安装。

  1. 将存储库添加到您的 composer.json 文件中

     "repositories": [
         {
             "type": "vcs",
             "url": "git@github.com:Endouble/Symfony3-custom-coding-standard"
         }
    
  2. 将编码标准作为项目依赖项添加

 "require-dev": {
        "endouble/symfony3-custom-coding-standard": "^2.10"
    },
  1. 将编码标准添加到 PHP_CodeSniffer 安装路径

此路径相对于 php_codesniffer 安装路径。这对于使其在您的 vagrant、本地机器和 PHPStorm 中工作都同样重要

    bin/phpcs --config-set installed_paths ../../endouble/symfony3-custom-coding-standard
  1. 检查安装的编码标准以查找 "Symfony2"

     bin/phpcs -i
    
  2. 完成!

    bin/phpcs --standard=Symfony3Custom /path/to/code
       
    
  3. (可选) 设置 PHPStorm

  • 在 Languages & Frameworks -> PHP -> Code Sniffer 下配置 code sniffer
  • 转到 Editor -> Inspections -> PHP Code sniffer,刷新标准并选择 Symfony3Custom

自定义

以下调整已对原始标准进行

在 Sniff/WhiteSpace/AssignmentSpacingSniff

  • 为 ``declare(strict_types=1);` 添加了异常,以符合 PSR-12

在 Sniff/WhiteSpace/FunctionalClosingBraceSniff

  • 从 Squiz 复制并调整,以在函数末尾没有空白行

在 Sniff/Commenting/FunctionCommentSniff

  • 检查在 docblock 上方的空白行
  • 不要检查测试和 setUp 方法(PHPUnit,将空白)的 docblock
  • 检查受保护的和私有方法的 docblock

在 Sniff/NamingConventions/ValidClassNameSniff

  • 删除抽象类名称规则

在 ruleset.xml

  • 禁用了类注释规则
  • 更改了连接空格规则,为了可读性,要求连接点周围有 1 个空格,而不是像 Symfony 标准要求的那样没有空格
  • 重新启用了从 superfluousWhitespace(在 PSR-2 中已禁用)的空白行检查