refinery29/php-cs-fixer-config
最新稳定版本:0.10.1
Composer 安装命令:
composer require refinery29/php-cs-fixer-config
包简介
Provides configurations for friendsofphp/php-cs-fixer, used within Refinery29.
README 文档
README
This repository provides configurations for friendsofphp/php-cs-fixer, which
we use to verify and enforce a single coding standard for PHP code within Refinery29.
Installation
Run
$ composer require --dev refinery29/php-cs-fixer-config
Usage
Pick a configuration
The following configurations are available:
Refinery29\CS\Config\Php56Refinery29\CS\Config\Php70Refinery29\CS\Config\Php71
Configuration
Create a configuration file .php_cs in the root of your project:
<?php $config = new Refinery29\CS\Config\Php56(); $config->getFinder()->in(__DIR__); $cacheDir = getenv('TRAVIS') ? getenv('HOME') . '/.php-cs-fixer' : __DIR__; $config->setCacheFile($cacheDir . '/.php_cs.cache'); return $config;
💡 Optionally, you can specify a header comment to use, which will automatically enable the header_comment fixer:
$header = <<<EOF Copyright (c) 2016 Refinery29, Inc. For the full copyright and license information, please view the LICENSE file that was distributed with this source code. EOF; $config = new Refinery29\CS\Config\Php56($header);
Git
Add .php_cs.cache (this is the cache file created by php-cs-fixer) to .gitignore:
vendor/
.php_cs.cache
Travis
Update your .travis.yml to cache the php_cs.cache file:
cache: directories: - $HOME/.php-cs-fixer
Then run php-cs-fixer in the script section:
script: - vendor/bin/php-cs-fixer fix --config=.php_cs --verbose --diff --dry-run
If you only want to run php-cs-fixer on one PHP version, update your build matrix and use a condition:
matrix: include: - php: 5.5 env: WITH_CS=true - php: 5.6 env: WITH_COVERAGE=true script: - if [[ "$WITH_CS" == "true" ]]; then vendor/bin/php-cs-fixer fix --config=.php_cs --verbose --diff --dry-run; fi
Makefile
Create a Makefile with a composer (because we're lazy) and a cs target:
composer: composer validate composer install cs: composer vendor/bin/php-cs-fixer fix --config=.php_cs --verbose --diff
Fixing issues
Manually
If you need to fix issues locally, just run
$ make cs
Pre-commit hook
You can add a pre-commit hook
$ touch .git/pre-commit && chmod +x .git/pre-commit
Paste this into .git/pre-commit:
#!/usr/bin/env bash echo "pre commit hook start" CURRENT_DIRECTORY=`pwd` GIT_HOOKS_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" PROJECT_DIRECTORY="$GIT_HOOKS_DIR/../.." cd $PROJECT_DIRECTORY; PHP_CS_FIXER="vendor/bin/php-cs-fixer" HAS_PHP_CS_FIXER=false if [ -x "$PHP_CS_FIXER" ]; then HAS_PHP_CS_FIXER=true fi if $HAS_PHP_CS_FIXER; then git status --porcelain | grep -e '^[AM]\(.*\).php$' | cut -c 3- | while read line; do ${PHP_CS_FIXER} fix --config=.php_cs --verbose ${line}; git add "$line"; done else echo "" echo "Please install php-cs-fixer, e.g.:" echo "" echo " composer require --dev friendsofphp/php-cs-fixer:^2.2.0 echo "" fi cd $CURRENT_DIRECTORY; echo "pre commit hook finish"
💡 See https://gist.github.com/jwage/c4ef1dcb95007b5be0da by @jwage (adjusted by @rcatlin for @refinery29).
Contributing
Please have a look at CONTRIBUTING.md.
License
This package is licensed using the MIT License.
refinery29/php-cs-fixer-config 适用场景与选型建议
refinery29/php-cs-fixer-config 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 75.42k 次下载、GitHub Stars 达 46, 最近一次更新时间为 2015 年 08 月 19 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 refinery29/php-cs-fixer-config 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 refinery29/php-cs-fixer-config 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 75.42k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 47
- 点击次数: 10
- 依赖项目数: 10
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-08-19