Copy/Paste Detector (CPD) for PHP code.

Installs: 15 139 686

Dependents: 2 140

Suggesters: 23

Security: 0

Stars: 1 907

Watchers: 67

Forks: 158

Open Issues: 8

4.1.0 2018-09-17 17:17 UTC

This package is auto-updated.

Last update: 2020-01-23 13:06:15 UTC


Latest Stable Version Minimum PHP Version Build Status

PHP Copy/Paste Detector (PHPCPD)

phpcpd is a Copy/Paste Detector (CPD) for PHP code.


PHP Archive (PHAR)

The easiest way to obtain PHPCPD is to download a PHP Archive (PHAR) that has all required dependencies of PHPCPD bundled in a single file:

$ wget
$ chmod +x phpcpd.phar
$ mv phpcpd.phar /usr/local/bin/phpcpd

You can also immediately use the PHAR after you have downloaded it, of course:

$ wget
$ php phpcpd.phar


You can add this tool as a local, per-project, development-time dependency to your project using Composer:

$ composer require --dev sebastian/phpcpd

You can then invoke it using the vendor/bin/phpcpd executable.

Usage Example

$ phpcpd --fuzzy wordpress-4.9.8
phpcpd 4.1.0 by Sebastian Bergmann.

Found 66 clones with 3014 duplicated lines in 40 files:

  - /home/sb/wordpress-4.9.8/wp-includes/Requests/IRI.php:358-708 (350 lines)
  - /home/sb/wordpress-4.9.8/wp-includes/SimplePie/File.php:133-144 (11 lines)

0.86% duplicated lines out of 349460 total lines of code.
Average size of duplication is 45 lines, largest clone has 350 of lines

Time: 1.79 seconds, Memory: 272.00MB