https://github.com/rovast/php-standard-demo
php 规范示例工程
https://github.com/rovast/php-standard-demo
php-cs-fixer php-md phpcpd
Last synced: 5 months ago
JSON representation
php 规范示例工程
- Host: GitHub
- URL: https://github.com/rovast/php-standard-demo
- Owner: rovast
- License: mit
- Created: 2019-01-02T02:34:45.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-01-02T03:17:16.000Z (about 7 years ago)
- Last Synced: 2024-12-28T05:44:01.356Z (over 1 year ago)
- Topics: php-cs-fixer, php-md, phpcpd
- Language: PHP
- Size: 16.6 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# php-standard-demo
PHP 规范示例工程
## 介绍
团队协作中,规范显得尤其重要。我们可以通过一些现有的自动化工具来进行规范。
本工程结合了当前社区的工具,只选出了必要的工具,所谓小而精,大概也说的就是
这件事情。
**php-cs-fixer**
地址:[friendsofphp/php-cs-fixer](https://github.com/FriendsOfPHP/PHP-CS-Fixer)
安装:`composer require friendsofphp/php-cs-fixer --dev -vvv`
一句话介绍:自动格式化校正代码风格
**phpmd**
地址:[phpmd/phpmd](https://github.com/phpmd/phpmd)
安装:`composer require phpmd/phpmd --dev -vvv`
一句话介绍:检测 PHP 的命名、代码复杂度规范等
**phpcpd**
地址:[sebastianbergmann/phpcp](https://github.com/sebastianbergmann/phpcpd)
安装:`composer require sebastian/phpcpd --dev -vvv`
一句话介绍:检测项目是否存在代码到处复制粘贴
## 使用
**1. 复制粘贴 `composer.json` 中的依赖和脚本到工程中**
```json
"require-dev": {
"sebastian/phpcpd": "^4.1",
"phpmd/phpmd": "^2.6",
"friendsofphp/php-cs-fixer": "^2.13"
},
"scripts": {
"check-copy-src": "vendor/bin/phpcpd ./src",
"fix-src": "vendor/bin/php-cs-fixer fix ./src",
"check-mess-src": "vendor/bin/phpmd ./src text ./phpmd.xml",
"check-src": "composer check-copy-src && composer check-mess-src"
}
```
其中 composer script 就是对默认命令的组合
> - `composer check-copy-src` 检测 src 目录下代码是否存在复制情况
> - `composer fix-src` 校正 src 目录下代码风格
> - `check-mess-src` 检查 src 目录下代码复杂度等
> - `check-src` 复制和代码复杂度联合检测
**2. 在项目中运行 `composer install -vvv`**