-
-
Notifications
You must be signed in to change notification settings - Fork 95
Requirements
PHP_CodeSniffer 4.x requires PHP 7.2.0 or greater.
Prior to PHP_CodeSniffer 4.0.0, the minimum PHP requirement was 5.4.0.
Additionally, PHP_CodeSniffer requires the following PHP extensions to be enabled:
- Tokenizer: used by the core tokenizer to process PHP files
- SimpleXML: used to process ruleset XML files
- XMLWriter: used to create some report formats
- libxml: required by the SimpleXML and XMLWriter extensions
The following PHP extensions are not required, but are strongly recommended:
-
DOM: used for displaying the sniff documentation via the
--generator=...option. -
iconv: used for accurate character length calculation in files containing multibyte characters.
Without this extension, some sniffs, likeGeneric.Files.LineLength, may report incorrect results for lines containing non-ASCII characters, as PHP_CodeSniffer will fall back to byte-based length calculations.
Additionally, the following reports will not work without this extension if the projectencodingis not UTF-8: Checkstyle, JUnit and XML. - json: required for the cache functionality, as well as for the JSON report output.
-
PCNTL: required for parallel processing via the
--parallelCLI option.
Without this extension, PHP_CodeSniffer will not be able to check multiple files simultaneously.
Individual sniffs may have additional requirements such as external applications and scripts. See the Configuration Options manual page for a list of these requirements.
Warning
The gRPC PHP extension is known to cause PHP_CodeSniffer to hang when running with parallel processing enabled. If the gRPC extension is loaded, either do not use the --parallel CLI option or configure the extension's ini settings as follows:
phpcs -d grpc.enable_fork_support=1 -d grpc.poll_strategy=epoll1 [other options] <file|directory>
Found a mistake ? Think this documentation can be improved ?
Contributions to this wiki are welcome! Submit a pull request to the Documentation repository to propose your changes.
For everyone
Introduction
Requirements
Usage
Advanced Usage
Reporting
Configuration Options
Fixing Errors Automatically
FAQ
For coding standard creators
About Standards for PHP_CodeSniffer
Annotated Ruleset
Customisable Sniff Properties
Version 4.0 Upgrade Guide
For sniff developers
Coding Standard Tutorial
Version 4.0 Upgrade Guide (Dev)
Version 3.0 Upgrade Guide
Version 1.3.0 Upgrade Guide