Skip to content

codeclimate/codeclimate-phpcodesniffer

Repository files navigation

Code Climate PHP_CodeSniffer Engine

Code Climate

codeclimate-phpcodesniffer is a Code Climate engine that wraps the PHP_Code Sniffer static analysis tool. You can run it on your command line using the Code Climate CLI, or on our hosted analysis platform.

PHP_CodeSniffer helps you detect violations of a defined coding standard.

Installation

  1. If you haven't already, install the Code Climate CLI.
  2. Run codeclimate engines:enable phpcodesniffer. This command both installs the engine and enables it in your .codeclimate.yml file.
  3. You're ready to analyze! Browse into your project's folder and run codeclimate analyze.

Config Options

Format the values for these config options per the PHP_CodeSniffer documentation.

  • file_extensions - This is where you can configure the file extensions for the files that you want PHP_CodeSniffer to analyze.
  • standard - This is the comma delimited list of standards that you want PHP_CodeSniffer to use while analyzing your files. You may optionally include a relative path to a custom phpcs ruleset.xml file.
  • ignore_warnings - You can hide warnings, and only report errors with this option.
  • encoding - By default, PHPCS uses ISO-8859-1. Use this to change it to your encoding, e.g. UTF-8.

Sample Config

exclude_paths:
 - "/examples/**/*"
engines:
  phpcodesniffer:
    enabled: true
    config:
      file_extensions: "php,inc,lib"
      standard: "PSR1,PSR2,my_custom_php_ruleset.xml"
      ignore_warnings: true
      encoding: utf-8
ratings:
  paths:
  - "**.php"

Supported Coding Standards

In addition to standards provided by default with PHP_CodeSniffer, the Drupal, WordPress, Yii2, and Magento Extension coding standards are supported. Here is the full list:

  • Drupal
  • DrupalPractice
  • MEQP1
  • MEQP2
  • MySource
  • PEAR
  • PHPCS
  • PSR1
  • PSR2
  • Squiz
  • WordPress
  • WordPress-Core
  • WordPress-Docs
  • WordPress-Extra
  • WordPress-VIP
  • Yii2
  • Zend

Need help?

For help with PHP_CodeSniffer, check out their documentation.

If you're running into a Code Climate issue, first look over this project's GitHub Issues, as your question may have already been covered. If not, go ahead and open a support ticket with us.