instaclick/php-code-sniffer

(fork) PHP_CodeSniffer tokenises PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.

1.4.2 2012-11-09 02:33 UTC

README

PHP_CodeSniffer is a PHP5 script that tokenises PHP, JavaScript and CSS files to detect violations of a defined coding standard. It is an essential development tool that ensures your code remains clean and consistent. It can also help prevent some common semantic errors made by developers.

Build Status

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.

The SVN pre-commit hook requires PHP version 5.2.4 or greater due to its use of the vertical whitespace character.

Installation

The easiest way to install PHP_CodeSniffer is to use the PEAR installer. This will make the phpcs command immediately available for use. To install PHP_CodeSniffer using the PEAR installer, first ensure you have installed PEAR and then run the following command:

pear install PHP_CodeSniffer

If you use Composer, include a dependency for squizlabs/php_codesniffer in your composer.json file. For example:

{
    "require": {
        "squizlabs/php_codesniffer": "1.*"
    }
}

You will then be able to run PHP_CodeSniffer from the vendor bin directory:

./vendor/bin/phpcs -h

You can also download the PHP_CodeSniffer source and run the phpcs command directly from the GIT checkout:

git clone git://github.com/squizlabs/PHP_CodeSniffer.git
cd PHP_CodeSniffer
php scripts/phpcs -h

Documentation

The documentation for PHP_CodeSniffer is available in the PEAR manual.

Information about upcoming features and releases is available on the Squiz Labs blog.

Contributing

If you do contribute code to PHP_CodeSniffer, please make sure it conforms to the PEAR coding standard and that the PHP_CodeSniffer unit tests still pass. The easiest way to contribute is to work on a checkout of the repository, or your own fork, rather than an installed PEAR version. If you do this, you can run the following commands to check if everything is ready to submit:

cd PHP_CodeSniffer
php scripts/phpcs --ignore=*/tests/* . -n

Which should give you no output, indicating that there are no PEAR coding standard errors. And then:

phpunit tests/AllTests.php

Which should give you no failures or errors. You can ignore any skipped tests as these are for external tools.

Issues

Bug reports and feature requests can be submitted on the PEAR bug tracker.