Set of shared PHP styles for PHP-CS-Fixer, based on Symphony (PRS12, PSR2) PHP Coding standard.
via Composer:
composer require binary-cats/laravel-php-styles --dev
It will add the package to the require-dev
block of your composer.json
.
You can also add it manually, like this, to get the latest version:
"require-dev": {
"binary-cats/laravel-php-styles": "^2.0"
},
You can publish the stub file using
php artisan vendor:publish --provider=BinaryCats\\PhpStyles\\PhpStyleServiceProvider
You should also add .php-cs-fixer.cache
to your .gitignore
.
The package provides with the current set of rules:
return [
'@Symfony' => true,
'AdamWojs/phpdoc_force_fqcn_fixer' => true,
'concat_space' => ['spacing' => 'one'],
'new_with_braces' => true,
'no_superfluous_phpdoc_tags' => false,
'not_operator_with_successor_space' => true,
'ordered_imports' => ['imports_order' => ['class', 'function', 'const'], 'sort_algorithm' => 'alpha'],
'phpdoc_separation' => false,
];
PHP-CS-Fixer is going to expect your default configuration to be in a /.php-cs-fixer.dist.php
file.
<?php
$finder = PhpCsFixer\Finder::create()->in([
__DIR__.'/app',
__DIR__.'/config',
__DIR__.'/database',
__DIR__.'/routes',
__DIR__.'/tests',
]);
return BinaryCats\PhpStyles\styles($finder);
And now you can run the fix like this:
./vendor/bin/php-cs-fixer fix
If you want to see the progress as you go by:
./vendor/bin/php-cs-fixer fix --verbose --show-progress=dots
If you want to add this to composer alias, you can add this to your composer.json
:
...
"scripts": {
"style": "./vendor/bin/php-cs-fixer fix"
}
If you want to change the rules, disable, or add your own, simply update .php-cs-fixer.dist.php
in your project's root:
...
return BinaryCats\PhpStyles\styles($finder, [
// Do not wrap concat . with spaces
'concat_space' => ['spacing' => 'none'],
]);
If you want to add more custom fixers, there is a third argument:
...
return BinaryCats\PhpStyles\styles($finder, [
// turn the force FQCN fixer off
'AdamWojs/phpdoc_force_fqcn_fixer' => false,
], [
new \AdamWojs\PhpCsFixerPhpdocForceFQCN\Fixer\Phpdoc\ForceFQCNFixer,
]);
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING and CODE_OF_CONDUCT for details.
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
The MIT License (MIT). Please see License File for more information.