fpcs / php-coding-standard
FPCS PHP 编码规范
2.0.2
2022-02-07 16:26 UTC
Requires
- php: ^7.3||^8.0
- dealerdirect/phpcodesniffer-composer-installer: ^0.7
- sirbrillig/phpcs-import-detection: ^1.3
- slevomat/coding-standard: ^7.0
- symplify/easy-coding-standard: ^9.3
README
安装
安装包
composer require --dev fpcs/php-coding-standard
实施标准
./phpcs.xml
<?xml version="1.0"?>
<ruleset>
<rule ref="vendor/fpcs/php-coding-standard/phpcs" />
</ruleset>
./easy-coding-standard.yaml
imports:
- { resource: 'vendor/symplify/easy-coding-standard/config/set/psr2.yaml' }
- { resource: 'vendor/symplify/easy-coding-standard/config/set/clean-code.yaml' }
- { resource: 'vendor/fpcs/php-coding-standard/easy-coding-standard/*.yaml' }
选择特定标准
有 base
标准和更具体的标准,这些标准应作为 base
标准的补充使用。
可用标准
base
(始终使用)laravel
./phpcs.xml
<?xml version="1.0"?>
<ruleset>
<rule ref="vendor/fpcs/php-coding-standard/phpcs/base.xml" />
<rule ref="vendor/fpcs/php-coding-standard/phpcs/laravel.xml" />
</ruleset>
./easy-coding-standard.yaml
imports:
- { resource: 'vendor/symplify/easy-coding-standard/config/set/psr2.yaml' }
- { resource: 'vendor/symplify/easy-coding-standard/config/set/clean-code.yaml' }
- { resource: 'vendor/fpcs/php-coding-standard/easy-coding-standard/base.yaml' }
- { resource: 'vendor/fpcs/php-coding-standard/easy-coding-standard/laravel.yaml' }
自动化
package.json
"scripts": {
...
"ecs": "./vendor/bin/ecs check ./ --fix",
"phpcbf": "./vendor/bin/phpcbf ./",
"phpcs": "./vendor/bin/phpcs -sp ./",
"lint": "yarn ecs && yarn phpcbf",
...
},
lint-stagerd.config.js
module.exports = {
'*.php': files => [
`./vendor/bin/ecs check --fix "${files.join('" "')}"`,
`./vendor/bin/phpcbf "${files.join('" "')}"`,
`git add "${files.join('" "')}"`,
],
};
运行它
yarn lint