2012-09-01 2 views
4

내 문제는 phpcpd 명령을 실행할 때 항상 0 %의 코드 결과를 두 번 얻었습니다. 내 프로젝트에 상관없이 그것이 어떤 PHP 모듈의 파일이라도, 또는 내가 만든 파일이라면PHP 복사 붙여 넣기 감지기

phpcpd 폴더/file.php : phpcpd 내가 파일을 검사 할 때 그것은 또한 0 % 표시 아래에 예를 들어 ... 작동

<?php 

class Class_Two { 

    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
     } 
    } 

    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
     } 
    } 
    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
     } 
    } 

    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
     } 
    } 
    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
     } 
    } 

    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
     } 
    } 
    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
     } 
    } 

    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
     } 
    } 
    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
     } 
    } 

    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
     } 
    } 
    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
     } 
    } 

    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
      echo 'ok'; 
     } 
    } 

} 

class Class_Two { 

    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
     } 
    } 

    public function aaa() 
    { 
     if(2 == 2) 
     { 
      echo 'ok'; 
     } 
    } 

} 

왜 제대로 작동하지 않습니다에 대한 어떤 제안? 아니면 다른 작업을 수행해야합니까?

답변

1

보십시오 폴더에없는 파일을 실행 :

phpcpd /folder/ 
4

기본 phpcpd으로

http://www.codediesel.com/tools/detecting-duplicate-code-in-php-files/에서 5 개 동일한 라인과 (70)와 동일한 토큰의 최소를 검색합니다. 따라서 코드에 중복 된 줄이 5 개 미만이거나 동일한 토큰이 70 개 미만이면 무시됩니다. 을 무시하려면 -min-lines 및 -min-tokens 스위치를 사용할 수 있습니다.

0

아, 나는 모두를 시도하고, 아무도 내가 항상 0 내가 많이 만들 경우에도 라인을 두 배로 얻을 말은 ... 작동하지 않습니다 파일에서 같은 줄의.

--min-lines 1 --min-tokens 1을 입력하면 다음과 같이 두 가지주의 사항이 표시됩니다. C : /php/pear/PHPCPD/Detector/Strategy/Default.php 온라인의 정의되지 않은 오프셋 ...

관련 문제