eXolnet configuration for PHP CodeSniffer.

v2.0.0 2020-04-20 13:07 UTC

This package is auto-updated.

Last update: 2021-10-25 00:31:16 UTC


Software License Build Status

A collection of shareable configurations for various coding-style tools to make the configurations consistent across our projects.


  1. composer require --dev exolnet/phpcs-config
  2. Run the following command to run the standards checks:
vendor/bin/phpcs --standard=vendor/exolnet/phpcs-config .

You can add this to your Travis YAML file as a test:

  - phpunit
  - vendor/bin/phpcs --standard=vendor/exolnet/phpcs-config .

Excluding Files

This standard includes special support for a .phpcsignore file (in the future, this should be built into phpcs itself). Simply place a .phpcsignore file in your root directory (wherever you're going to run phpcs from).

The format of this file is similar to .gitignore and similar files: one pattern per line, comment lines should start with a #, and whitespace-only lines are ignored:

# Exclude our tests directory.

# Exclude any file ending with ".inc"

Note that the patterns should match the PHP_CodeSniffer style: * is translated to .* for convenience, but all other characters work like a regular expression.

Patterns are relative to the directory that the .phpcsignore file lives in. On load, they are translated to absolute patterns: e.g. */tests/* in /your/dir/.phpcsignore will become /your/dir/.*/tests/.* as a regular expression. This differs from the regular PHP_CodeSniffer practice.


If you want to add further rules (such as laravel-specific rules), you can create your own custom standard file (e.g. ruleset.xml):

<?xml version="1.0"?>
    <!-- Use eXolnet Coding Standards -->
    <rule ref="vendor/exolnet/phpcs-config" />
    <!-- Add Laravel-specific rules -->
    <rule ref="PSR1.Classes.ClassDeclaration.MissingNamespace">

You can then reference this file when running phpcs:

vendor/bin/phpcs --standard=ruleset.xml .

Excluding/Disabling Checks

You can also customise the rule to exclude elements if they aren't applicable to the project:

<rule ref="vendor/exolnet/phpcs-config">
	<!-- Disable short array syntax -->
	<exclude name="PSR1.Classes.ClassDeclaration.MissingNamespace" />

Rules can also be disabled inline. phpcs rules can be disabled with a // @codingStandardsIgnoreLine comment, and ESLint rules can be disabled with a /* eslint disable ... */ comment.

To find out what these codes are, specify -s when running phpcs, and the code will be output as well. You can specify a full code, or a partial one to disable groups of errors.


If you discover any security related issues, please email security@exolnet.com instead of using the issue tracker.



This code is licensed under the MIT license. Please see the license file for more information.