About
PHP_CodeSniffer is a set of two PHP scripts; the main phpcs
script that tokenizes PHP, JavaScript and CSS files to detect violations of a defined coding standard, and a second phpcbf
script to automatically correct coding standard violations. PHP_CodeSniffer is an essential development tool that ensures your code remains clean and consistent., (*1)
, (*2)
, (*3)
Requirements
PHP_CodeSniffer requires PHP version 5.1.2 or greater, although individual sniffs may have additional requirements such as external applications and scripts. See the Configuration Options manual page for a list of these requirements., (*4)
The SVN pre-commit hook requires PHP version 5.2.4 or greater due to its use of the vertical whitespace character., (*5)
Installation
The easiest way to get started with PHP_CodeSniffer is to download the Phar files for each of the commands:, (*6)
curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar
php phpcs.phar -h
curl -OL https://squizlabs.github.io/PHP_CodeSniffer/phpcbf.phar
php phpcbf.phar -h
If you use PEAR, you can install PHP_CodeSniffer using the PEAR installer. This will make the phpcs
and phpcbf
commands immediately available for use. To install PHP_CodeSniffer using the PEAR installer, first ensure you have installed PEAR and then run the following command:, (*7)
pear install PHP_CodeSniffer
If you prefer using Composer you can easily install PHP_CodeSniffer system-wide with the following command:, (*8)
composer global require "squizlabs/php_codesniffer=*"
Make sure you have the composer bin dir in your PATH. The default value is ~/.composer/vendor/bin/
, but you can check the value that you need to use by running composer global config bin-dir --absolute
., (*9)
Or alternatively, include a dependency for squizlabs/php_codesniffer
in your composer.json
file. For example:, (*10)
{
"require-dev": {
"squizlabs/php_codesniffer": "2.*"
}
}
You will then be able to run PHP_CodeSniffer from the vendor bin directory:, (*11)
./vendor/bin/phpcs -h
./vendor/bin/phpcbf -h
You can also download the PHP_CodeSniffer source and run the phpcs
and phpcbf
commands directly from the Git clone:, (*12)
git clone https://github.com/squizlabs/PHP_CodeSniffer.git
cd PHP_CodeSniffer
php scripts/phpcs -h
php scripts/phpcbf -h
Documentation
The documentation for PHP_CodeSniffer is available on the Github wiki., (*13)
Information about upcoming features and releases is available on the Squiz Labs blog., (*14)
Issues
Bug reports and feature requests can be submitted on the Github Issue Tracker or the PEAR bug tracker., (*15)
Contributing
See CONTRIBUTING.md for information., (*16)