clang-tidy vs PHPMD
clang-tidy
clang.llvm.orgPHPMD
phpmd.orgSide by side
| Figure | clang-tidy | PHPMD |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | — | Yes |
| macOS | — | Yes |
| Linux | Yes | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Linters | 8.5 (#4) | 7.7 (#21) |
| License | The LLVM project states that its code is licensed under the Apache 2.0 License with LLVM exceptions. | The project site identifies PHPMD as licensed under the BSD 3-Clause license. |
| Purpose | clang-tidy is a Clang-based C++ linter for diagnosing and fixing typical programming errors, including style violations, interface misuse, and bugs detectable by static analysis. | PHPMD analyzes PHP source code for possible bugs, suboptimal code, overcomplicated expressions, and unused parameters, methods, or properties. |
Plans
In their own words
clang-tidy
clang-tidy has no write-up on Specifiction yet; its figures are above.
PHPMD
PHPMD analyzes PHP source code for possible bugs, inefficient patterns, complicated expressions, and unused parameters, methods, or properties. Its predefined rules flag code smells and potential errors across categories including clean code, code size, controversial practices, design, naming, and unused code. Teams can add custom rules and use security rules, and PHPMD supports CI workflows. Reports include JSON, SARIF, Checkstyle-compatible, GitHub, and GitLab options, including a GitLab renderer for GitLab CI. The project documents installation through a Phar, PHIVE, or Composer; Phar files are signed with a public key associated with [email protected]. Listed requirements are PHP >= 5.3.9 and PHP_Depend >= 2.0.0. PHPMD is free under the BSD 3-Clause license and runs on Linux, macOS, Windows, or a self-hosted setup. The homepage lists version 2.15.0, dated 2023/12/11, as the latest release shown. Help is available through the Gitter channel, while bugs and feature requests go to the issue tracker.