Skip to content
Copy/Paste Detector (CPD) for PHP code.
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Add configuration for probot-stale Jun 2, 2018
build Housekeeping Jan 27, 2019
src Housekeeping Jan 27, 2019
tests Housekeeping Jan 27, 2019
.gitattributes Make the output of git-diff and git-grep more useful for PHP sourcefi… Jan 24, 2012
.gitignore Add .php_cs configuration Nov 16, 2017
.php_cs.dist Housekeeping Jan 27, 2019
.travis.yml Test against PHP 7.4 Feb 11, 2019
ChangeLog.md
LICENSE Cleanup Feb 2, 2018
README.md Update Sep 14, 2018
build.xml Update build automation Nov 16, 2017
composer.json Housekeeping Jan 27, 2019
phive.xml
phpcpd Leftover from bb7953b Sep 14, 2018
phpunit.xml Housekeeping Jan 27, 2019

README.md

Latest Stable Version Minimum PHP Version Build Status

PHP Copy/Paste Detector (PHPCPD)

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

Installation

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 https://phar.phpunit.de/phpcpd.phar
$ 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 https://phar.phpunit.de/phpcpd.phar
$ php phpcpd.phar

Composer

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/IRI.php:404-754
.
.
.
  - /home/sb/wordpress-4.9.8/wp-includes/SimplePie/File.php:133-144 (11 lines)
    /home/sb/wordpress-4.9.8/wp-includes/SimplePie/File.php:215-226

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
You can’t perform that action at this time.