phpcodesniffer-composer-installer, 用于PHP_CodeSniffer编码标准的Composer 安装程序

分享于 

6分钟阅读

GitHub

  繁體 雙語
Composer installer for PHP_CodeSniffer coding standards
  • 源代码名称:phpcodesniffer-composer-installer
  • 源代码网址:http://www.github.com/Dealerdirect/phpcodesniffer-composer-installer
  • phpcodesniffer-composer-installer源代码文档
  • phpcodesniffer-composer-installer源代码下载
  • Git URL:
    git://www.github.com/Dealerdirect/phpcodesniffer-composer-installer.git
    Git Clone代码到本地:
    git clone http://www.github.com/Dealerdirect/phpcodesniffer-composer-installer
    Subversion代码到本地:
    $ svn co --depth empty http://www.github.com/Dealerdirect/phpcodesniffer-composer-installer
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    
    PHP_CodeSniffer标准 Composer 安装程序插件

    Project StageMaintenanceAwesomeLicense

    TravisScrutinizerDependency StatusLatest Version on PackagistPackagist

    这个 Composer 安装插件允许轻松安装 PHP_CodeSniffer 编码标准( 规则集)。

    不再对目录进行符号链接,在特定位置签出仓库或者更改 phpcs 配置。

    注意:这个插件与版本 2.x 和 PHP_CodeSniffer 兼容。

    用法

    可以通过使用 Composer 插件完成安装,并要求将这里软件包作为开发依赖项:

    composer require --dev dealerdirect/phpcodesniffer-composer-installer

    完成。

    工作原理

    基本上,这里插件执行以下步骤:

    • 这个插件在你当前安装的Composer 包中搜索 phpcodesniffer-standard 包。
    • 匹配软件包和项目本身以扫描PHP_CodeSniffer规则集。
    • 这个插件将调用PHP_CodeSniffer并配置 installed_paths 选项。

    示例项目

    下面是一个 Composer 项目示例,包含多个 phpcodesniffer-standard 包。

    {
     "name": "dealerdirect/example-project",
     "description": "Just an example project",
     "type": "project",
     "require": {},
     "require-dev": {
     "dealerdirect/phpcodesniffer-composer-installer": "*",
     "object-calisthenics/phpcs-calisthenics-rules": "*",
     "wimg/php-compatibility": "*",
     "wp-coding-standards/wpcs": "*" }
    }

    运行 composer install PHP_CodeSniffer后,只需执行以下操作:

    $./vendor/bin/phpcs -i
    The installed coding standards are MySource, PEAR, PSR1, PSR2, Squiz, Zend, PHPCompatibility, WordPress,
    WordPress-Core, WordPress-Docs, WordPress-Extra and WordPress-VIP

    直接调用插件

    在某些情况下,直接调用插件的功能是非常理想的。 例如在开发过程中或者在 CI环境中。

    由于插件需要 Composer 工作,直接调用需要通过项目的composer.json 连接。

    通过在 composer.jsonscript 部分中添加对 Plugin::run 函数的调用来完成这里操作:

    {
     "scripts": {
     "install-codestandards": [
     "DealerdirectComposerPluginInstallersPHPCodeSnifferPlugin::run" ]
     }
    }

    命令可以使用以下命令调用 composer run-script install-codestandards 或者从其他脚本配置中引用,如下所示:

    {
     "scripts": {
     "install-codestandards": [
     "DealerdirectComposerPluginInstallersPHPCodeSnifferPlugin::run" ],
     "post-install-cmd": [
     "@install-codestandards" ]
     }
    }

    有关 Composer 脚本的更多细节,请参阅 Composer 手册中的部分 on。

    警告

    这个插件安装全局时,Composer 将加载全局插件插件,而不是本地存储库中的插件。 尽管在 Composer 手册中记录了这种行为,但可能会混淆作为插件的其他版本,而不是由项目所指定的插件。

    开发编码标准

    代码标准可以在 PHP_CodeSniffer 文档中正常开发,在代码标准教程中。

    通过添加 composer.json 文件创建你的编码标准的Composer 包。

    {
     "name" : "acme/phpcodesniffer-our-standards",
     "description" : "Package contains all coding standards of the Acme company",
     "require" : {
     "php" : ">=5.4.0,<8.0.0-dev",
     "squizlabs/php_codesniffer" : "^2.0" },
     "type" : "phpcodesniffer-standard"}

    要求:

    • 存储库可能包含一个或者多个标准。
    • 每个标准都可以有一个独立的目录,从存储库 root 中不超过 3个级别。
    • 软件包 type 必须是 phpcodesniffer-standard。 没有这个,插件就不会触发。

    变更日志

    这个存储库不包含 CHANGELOG.md 文件,但是我们在每个发行版上发布一个更新日志,使用的是的。

    这是一个活动的开源项目。 对于希望使用代码或者对它的做出贡献的人,我们总是开放的。

    我们已经为我们的贡献指南设置了一个单独的文档。

    感谢你参与 !


    COM  STA  PHP  STAN  standard  CODI  
    相关文章