charchas/phpcpd

PHP代码的复制/粘贴检测器(CPD)。

资助包维护!
sebastianbergmann

dev-master / 5.0.x-dev 2024-05-30 04:11 UTC

This package is auto-updated.

Last update: 2024-09-30 05:07:20 UTC


README

Latest Stable Version Minimum PHP Version Build Status

PHP复制/粘贴检测器(PHPCPD)

phpcpd 是一个用于PHP代码的复制/粘贴检测器(CPD)。

安装

PHP存档(PHAR)

获取PHPCPD的最简单方法是通过下载一个包含所有必需依赖项的PHP存档(PHAR),该存档将所有依赖项打包在一个文件中

$ wget https://phar.phpunit.de/phpcpd.phar
$ chmod +x phpcpd.phar
$ mv phpcpd.phar /usr/local/bin/phpcpd

当然,下载后您也可以立即使用PHAR

$ wget https://phar.phpunit.de/phpcpd.phar
$ php phpcpd.phar

Composer

您可以使用 Composer 将此工具作为本地、项目特定、开发时间依赖项添加到您的项目中

$ composer require --dev sebastian/phpcpd

然后,您可以使用 vendor/bin/phpcpd 可执行文件来调用它。

使用示例

$ 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