sercode/coding-standard-101

为 PHP_CodeSniffer 提供简单设置,可从其他包扩展规则集。

1.0.0 2017-05-16 18:44 UTC

This package is not auto-updated.

Last update: 2024-09-29 02:13:33 UTC


README

简单地将编码标准应用于您的项目的方法

关于

简单

需求

PHP 5.6 或更高版本。

安装

通过 composer 的最简单、最佳选项。只需将其添加到 composer.json

"require-dev": {
	"sercode/coding-standard-101": "~0.1"
},

或从命令行

$ composer require sercode/coding-standard-101 --dev

基本用法

运行 Code sniffer 检查代码

vendor/bin/phpcs src --standard=vendor/sercode/coding-standard-101/src/ruleset.xml -p

运行此操作以修复项目中的所有错误

vendor/bin/phpcbf src --standard=vendor/sercode/coding-standard-101/src/ruleset.xml -p

这就是基本用法的全部内容!这将检查项目中的所有文件与默认的 ruleset.xml 进行对照

如何保持安全

仅检查提交中的文件

如果您不想每次更改代码时都手动使用 Php_CodeSniffer,您可以通过 composer.json 添加 pre-commit 钩子。 每次您尝试提交时,Php_CodeSniffer 都将运行实际提交的更改的 .php 文件。

1) 手动使用
"scripts": {
    "cs-install-prehook": [
		"SerCode\\CodingStandard101\\Composer\\ScriptHandler::addPhpCsToPreCommitHook"
	]
}		

运行 composer updatecomposer install 后,只需运行

composer cs-install-prehook

要正确使用所有功能,您必须运行此脚本

如果您没有更改 ruleset.xml 的路径(见下文),则不需要再次运行此脚本

2) 如果您懒惰或者只是为了确保

只需添加一些代码

"scripts": {
	"post-install-cmd": [
		"@post-update-cmd"
	],
	"post-update-cmd": [
		"@cs-install-prehook"
	],  
	"cs-install-prehook": [
		"SerCode\\CodingStandard101\\Composer\\ScriptHandler::addPhpCsToPreCommitHook"
	]
}

这将在每次运行 composer updatecomposer install 时安装 git 提交预钩子。

第一种情况是在运行 composer install 后启动的,第二种情况是在 composer update 时启动的,并安装带有 ruleset.xml 路径的预钩子。更多信息请参见下文。

如果您想在不运行 codesniffer 的情况下提交,只需将 --no-verify 添加到提交命令中:

git commit -m "TEST" --no-verify

仅修复提交中的文件

composer.json 中放入

"scripts": {
  "fix-cs-commit": [
    "SerCode\\CodingStandard101\\Composer\\ScriptHandler::fixCsCommit"
  ]
}

并运行

composer fix-cs-commit

高级用法

(将添加)

您可以创建自己的规则集。

创建配置文件 .csStandard,包含规则集路径,导入不同的编码标准包,并在 ruleset.xml 中使用它们。

....

MALL 设置

将以下内容添加到 composer.json 中的 require-dev 部分 "sercode/coding-standard-101": "^0.1" 并添加以下内容

"scripts": {
    "cs-install-prehook": [
        "SerCode\\CodingStandard101\\Composer\\ScriptHandler::addPhpCsToPreCommitHook"
    ],
    "fix-cs-commit": [
        "SerCode\\CodingStandard101\\Composer\\ScriptHandler::fixCsCommit"
    ]
}

在项目的根目录中创建文件 .csStandard,内容如下

[ruleset]
0 = phpcs-ruleset.xml

运行 composer cs-install-prehook 进行安装

要修复提交的文件,请运行脚本

composer fix-cs-commit

** 要修复(或检查)的文件必须处于暂存状态。这意味着不要使用 -a 选项提交所有文件 (git commit -a -m "提交信息") **

灵感来自 https://github.com/DeprecatedPackages/CodingStandard