Skip to content
SPECIFICTION
Get listed

PHP_CodeSniffer vs PMD

PHP_CodeSniffer

github.com

PMD

pmd.github.io

Side by side

FigurePHP_CodeSnifferPMD
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
Windows—Yes
macOS—Yes
Linux—Yes
Self-hostedYesYes
Plans published11
Spec score · Linters7.3 (#29)8.3 (#6)
InstallationThe project documents installation through PHAR downloads, Composer, Phive, or a Git clone.PMD requires Java 8 or above and is distributed as a ZIP archive containing PMD and CPD.
LicenseThe repository identifies PHP_CodeSniffer as BSD-3-Clause licensed.The project identifies its license as BSD-style.
PurposePHP_CodeSniffer tokenizes PHP files and detects violations of a defined coding standard.PMD is an extensible cross-language static code analyzer that finds common programming flaws.
SupportThe project directs users to its GitHub issue tracker for bug reports and feature requests and to its wiki for documentation.The project directs users to Stack Overflow for questions, GitHub issues for suspected bugs or requests, and Gitter for quick questions.

Plans

PHP_CodeSniffer

  • PHP_CodeSnifferFree

PHP_CodeSniffer pricing →

PMD

  • PMDFree

PMD pricing →

In their own words

PHP_CodeSniffer

PHP_CodeSniffer has no write-up on Specifiction yet; its figures are above.

Visit github.com

PMD

PMD is a free, extensible static code analyzer that checks source code for programming flaws such as unused variables, empty catch blocks, and unnecessary object creation. It includes more than 400 built-in rules, and teams can write custom rules in Java or XPath. Its bundled CPD tool finds duplicated code across many programming languages. PMD checks source directories from the command line and can run as a Maven, Ant, Gradle, or bld build operation. Supported languages include Java, JavaScript, Salesforce Apex and Visualforce, Kotlin, Swift, Modelica, PL/SQL, Apache Velocity, JSP, WSDL, Maven POM, HTML, XML, and XSL; Scala is supported without Scala rules. It runs on Linux, macOS, and Windows and requires Java 8 or above. For CI, its GitHub Action can create SARIF reports and fail builds based on violation counts; documentation also covers GitLab, Jenkins, and Bamboo integrations. IDE integrations include Eclipse, IntelliJ IDEA, and Visual Studio Code, though some listed plugins are not actively maintained. Only the latest major version is actively developed.

Visit pmd.github.io