gtjamesa / php-standards
James' shared PHP style rules for PHP-CS-Fixer
Installs: 2 215
Dependents: 9
Suggesters: 0
Security: 0
Stars: 2
Watchers: 2
Forks: 0
Open Issues: 0
Requires
- php: ^7.0|^8.0
- friendsofphp/php-cs-fixer: ^3.0
README
This package defines my FriendsOfPHP/PHP-CS-Fixer
coding standards to be used across multiple projects. For details regarding the rules used, you may use php-cs-fixer-configurator.
Usage
Install the package by requiring php-cs-fixer
and php-standards
:
composer require --dev friendsofphp/php-cs-fixer gtjamesa/php-standards
Next, create a .php-cs-fixer.dist.php
file in the root of your project with the following content:
<?php use PhpCsFixer\Finder; $project_path = getcwd(); $finder = Finder::create() ->notPath('bootstrap/*') ->notPath('storage/*') ->notPath('resources/view/mail/*') ->in([ $project_path . '/app', $project_path . '/config', $project_path . '/database', $project_path . '/resources', $project_path . '/routes', $project_path . '/tests', ]) ->name('*.php') ->notName('*.blade.php') ->ignoreDotFiles(true) ->ignoreVCS(true); return JamesAusten\styles($finder);
The file above assumes a Laravel project, but the configuration can be edited for any PHP 7.0+ project.
Add the following entries to your .gitignore
file:
.php_cs.cache
.php-cs-fixer.cache
Configuration
The php-cs-fixer
rules can be found in ./src/rules.php
. These were taken from laravel-shift/.php_cs.laravel.php
and modified to suit my coding style. The following configuration parameters can be specified to the styles
function. The function returns a \PhpCsFixer\Config
instance, so you may also chain additional configuration parameters after the function call.
// Define rules to override the defaults $rules = [ 'method_argument_space' => true, 'phpdoc_summary' => false, ]; // Specify whether to enable caching (default: `true`) // https://github.com/FriendsOfPHP/PHP-CS-Fixer#caching $useCache = false; return JamesAusten\styles($finder, $rules, $useCache) ->setCacheFile(__DIR__ . '.php_cs.cache'); // Set the cache file
Run the fixer
To run the fixer, run the following command:
./vendor/bin/php-cs-fixer fix