sercode / coding-standard-101
Easy setup for PHP_CodeSniffer with extending from another packages with rulesets.
Installs: 3 124
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Requires
- php: ^7.0
- squizlabs/php_codesniffer: ^3.0
This package is not auto-updated.
Last update: 2025-04-27 04:50:23 UTC
README
Easy way to implement coding standards to your project
About
Easy
Requirements
PHP 5.6 or higher.
Instalation
Easiest and best option via composer. Just add to composer.json
"require-dev": {
"sercode/coding-standard-101": "~0.1"
},
or from command line
$ composer require sercode/coding-standard-101 --dev
Basic usage
Run with Code sniffer for check code:
vendor/bin/phpcs src --standard=vendor/sercode/coding-standard-101/src/ruleset.xml -p
Run this for fix all errors in project:
vendor/bin/phpcbf src --standard=vendor/sercode/coding-standard-101/src/ruleset.xml -p
That's all for really base usage! This check all files in your project against default ruleset.xml
How to be safe
Checking only files in commit
In case you don't want to use Php_CodeSniffer manually for every change in the code you make, you can add pre-commit hook via composer.json
.
Every time you try to commit, Php_CodeSniffer will run on changed .php
files for actual commit only.
1) Manual usage
"scripts": { "cs-install-prehook": [ "SerCode\\CodingStandard101\\Composer\\ScriptHandler::addPhpCsToPreCommitHook" ] }
After you run composer update or composer install just run:
composer cs-install-prehook
For proper use of all features you have to run this script
If you don't change path to ruleset.xml
(see bellow), you don't need to run this script again
2) if you are lazy or just be sure
Just add some code:
"scripts": { "post-install-cmd": [ "@post-update-cmd" ], "post-update-cmd": [ "@cs-install-prehook" ], "cs-install-prehook": [ "SerCode\\CodingStandard101\\Composer\\ScriptHandler::addPhpCsToPreCommitHook" ] }
This secure install git commit prehook every time when you run composer update or composer install.
First case is starts after you run composer install, second when composer update and install prehook with path to ruleset.xml
. For more information see below.
If you want commit without running codesniffer, just add --no-verify
to commit command:
git commit -m "TEST" --no-verify
Fixing only files in commit
To composer.json
put:
"scripts": { "fix-cs-commit": [ "SerCode\\CodingStandard101\\Composer\\ScriptHandler::fixCsCommit" ] }
and run
composer fix-cs-commit
Advanced usage
(will be added)
You can create own rulest.
Create confgi file .csStandard
with path to ruleset, inport differetn packages with codding
standards and use them in your ruleset.xml
.
....
Setup for MALL
add to composer.json
to section require-dev "sercode/coding-standard-101": "^0.1"
and add block
"scripts": {
"cs-install-prehook": [
"SerCode\\CodingStandard101\\Composer\\ScriptHandler::addPhpCsToPreCommitHook"
],
"fix-cs-commit": [
"SerCode\\CodingStandard101\\Composer\\ScriptHandler::fixCsCommit"
]
}
in root of project create file .csStandard
with content
[ruleset]
0 = phpcs-ruleset.xml
run composer cs-install-prehook
for install
for fix commitig files run script
composer fix-cs-commit
** Files for fix (or check) MUST be in stage. That means dont commit with adding all files by -a
option (git commit -a -m "commit message") **
Inspired by https://github.com/DeprecatedPackages/CodingStandard