Grunt plugin for running PHP Copy/Paste Detector (PHPCPD).

npm install grunt-phpcpd
2 downloads in the last day
12 downloads in the last week
35 downloads in the last month


Grunt plugin for running PHP Mess Detector.

This plugin is developed for Grunt 0.4.0 and is not tested for backward compatibility with Grunt 0.3.x.

Getting Started

  1. Install this grunt plugin with the follwing command:
npm install grunt-phpmd --save-dev
  1. Install PHPMD

  2. Add this to your project's Gruntfile.js:


PHPMD task

Run this task with the grunt phpmd command.

This task is a multi task so any targets, files and options should be specified according to the multi task documentation.

Usage Example

phpmd: {
  application: {
      dir: 'application'
    options: {
      rulesets: 'codesize'

Target Properties


Type: String

The file or directory where phpmd should search for files.



Type: String Default: 'phpmd'

The binary name if it is in your PATH or the full path if not.


Type: String Default: 'xml'

The type of report to generate. PHPMD supports xml, text and html.


Type: String Default: false

Set a path and filename here to write to a file, otherwise it will write to stdout.


Type: String Default: false

Set a comma-separated string of valid source code filename extensions.


Type: String Default: false

Set a comma-separated string of patterns that are used to ignore directories.


Type: Number Default: false

Rule priority threshold: rules with lower priority than this will not be used.


Type: Boolean Default: false

Also report those nodes with a @SuppressWarnings annotation.


Type: String Default: 'codesize,unusedcode,naming'

A ruleset filename or a comma-separated string of rulesetfilenames. Make sure to have no spaces between the items!


Type: Number Default: 200*1024

Override the maxBuffer-Size of nodejs's exec() function if you expect a long output on stdout.

npm loves you