PHP용 정적 분석 도구
PHP용 정적 분석 도구의 선별된 목록입니다.
기여
기여를 참조하세요.
목차
- 버그 찾기
- 코딩 표준
- DIY
- 해결사
- 측정항목
- SaaS
- 기타
버그 찾기
버그이거나 버그로 이어지는 코드의 문제를 보고하는 도구입니다.
- AppChecker - 소스 코드의 버그, 약점 및 취약성을 찾기 위한 정적 분석 도구
- 코드 통찰력 - 다른 프로젝트 코드 기반을 분석하기 위한 도구입니다.
- AST 지표 - 리팩토링이 필요한 코드를 식별하는 데 도움이 되는 매우 빠른 정적 코드 분석기입니다.
- Churn-PHP - 리팩토링이 필요한 파일을 검색합니다.
- 작곡가-종속성-분석기 - 작성기 종속성 문제(사용되지 않은 종속성, 섀도우 종속성, 잘못 배치된 종속성)를 빠르게 감지합니다.
- Composer-Unused - 코드를 스캔하여 사용되지 않은 Composer 종속성을 표시하는 Composer 도구입니다.
- Eir - C#으로 작성된 정적 취약성 분석 도구입니다.
- Exakat - 스마트 정적 분석.
- jscpd - 프로그래밍 소스 코드를 위한 복사/붙여넣기 감지기입니다.
- Mondrian - 그래프 이론을 사용한 코드 분석 도구입니다.
- name-collision-Detector - 기호 중복(클래스 이름 충돌)을 감지합니다.
- noverify - PHP용 매우 빠른 linter(코드 정적 분석 유틸리티)입니다.
- Pfff - 코드 분석, 시각화 또는 스타일 유지 소스 변환을 위한 도구입니다.
- phanalist - PHP용 정적 분석기입니다. 이는 PHP 코드에서 흔히 발생하는 실수를 잡는 데 도움이 됩니다.
- PHP 분석 - Rascal(PHP AiR)에서 PHP 소스 코드를 분석하고 수정하기 위한 라이브러리입니다.
- PHParch - PHPArch는 PHP 프로젝트를 위한 작업 중인 아키텍처 테스트 라이브러리입니다.
- PHP 가정 - 코드에서 약한 가정을 찾아 더 강력한 검증으로 전환하도록 제안합니다.
- PhpCodeAnalyzer - 내장되지 않은 확장 기능의 사용법을 찾습니다.
- PHPCodeFixer - 더 이상 사용되지 않는 함수, 변수 및 ini 지시문의 사용법을 찾습니다.
- php-compat-info - 코드 실행에 필요한 최소 버전과 확장 기능을 알아보세요.
- php7mar - PHP 7 마이그레이션 지원 보고서.
- phpcallgraph - 정적 호출 그래프를 생성합니다. 이러한 그래프는 애플리케이션의 메소드나 기능 간의 호출 종속성을 시각화합니다.
- PHPCPD - 복사/붙여넣기한 코드를 찾아내고 DRY 규칙을 시행하는 데 도움을 줍니다.
- PHPDoctor - 누락된 유형이 있는지 PHP 파일이나 디렉토리를 확인하세요.
- Phan - PHP 제작자인 Rasmus가 만든 정적 분석기입니다.
- Phinder - PHP 코드 조각 찾기
- Phortress - 잠재적인 취약점을 찾아내는 PHP 정적 코드 분석기입니다.
- PHP 호환성 - 특정 범위의 PHP 버전과 호환되지 않는 코드를 찾습니다.
- PHP Deprecation Detector - PhpDeprecationDetector - 최신 인터프리터 버전에서 더 이상 사용되지 않는 기능의 사용을 검색하는 PHP 코드 분석기입니다.
- PHP 코드 정적 분석 - nodeJS로 만든 PHP 코드 정적 분석 프로그램입니다.
- PHP 검사 - PHPStorm용 정적 분석 플러그인입니다.
- PHP Integrator - PHP 코드를 색인화하고 Atom 편집기에 대한 정적 분석을 수행합니다.
- Phlint - Phlint는 코드를 분석하고 잠재적인 코드 문제를 지적하여 PHP 코드의 품질을 유지하는 데 도움을 주는 도구입니다.
- PHP 린트 - PHP 자체로 명령줄에서 구문 오류를 감지할 수 있습니다.
- PHPlint - PHP 5 프로그램의 유효성 검사기 및 문서화기입니다.
- PHP-Parallel-Lint - PHP 5.4 이상용 병렬 PHP 린팅 도구
- PHP 매직 넘버 감지기 - PHP 매직 넘버 감지기
- PHP-malware-finder - 잠재적으로 악성인 PHP 파일 탐지
- PHP Mess Detector - 소스 코드 내에서 몇 가지 잠재적인 문제를 찾아보세요.
- PHP Reaper - SQL 주입을 위해 ADOdb 코드를 스캔합니다.
- PHP SA - PHP 애플리케이션 및 라이브러리에 대한 복잡한 분석을 제공하는 것을 목표로 하는 개발 도구입니다.
- PHP Stan - 코드를 실제로 실행하지 않고 코드에서 오류를 찾는 데 중점을 둡니다.
- PHP Unlocker - ADOdb를 사용하여 PHP 애플리케이션에 대한 의도하지 않은 잠재적인 DB 테이블 잠금을 감지합니다. 정적 분석 방법을 사용합니다.
- PHP 테스트 가능성 - PHP 코드베이스의 테스트 가능성 문제가 포함된 보고서를 분석하고 생성합니다.
- PHP 취약점 사냥꾼 - 정적 분석 방법을 사용하여 PHP 취약점을 자동으로 검사합니다.
- Progpilot - 보안 목적을 위한 정적 분석 도구입니다.
- Psalm - PHP 애플리케이션에서 오류를 찾기 위한 정적 분석 도구입니다.
- psecio:parse - Parse: PHP 보안 스캐너입니다.
- JetBrains의 Qodana PHP – PhpStorm을 기반으로 하는 PHP 프로젝트용 정적 분석 도구입니다.
- SonarQube - 코드 품질을 관리하는 개방형 플랫폼입니다. PHP 코드를 다룹니다.
- 부채널 분석기 - 부채널 취약 코드를 검색합니다.
- TaintPHP - 정적 오염 분석기.
- Tuli - 정적 분석 엔진입니다.
- Unused-scanner - 사용되지 않는 작곡가 종속성을 감지합니다.
- WAP - PHP(4.0 이상) 웹 애플리케이션의 입력 유효성 검사 취약성을 감지 및 수정하고 오탐지를 예측하는 도구입니다.
- PHP VarDump Check - 잊혀진 변수 덤프를 찾기 위한 PHP 콘솔 애플리케이션입니다.
- 17eyes - Haskell로 작성된 PHP 정적 분석기입니다.
- CakeFuzzer - CakePHP 기반 웹 애플리케이션을 위한 최고의 웹 애플리케이션 보안 테스트 도구입니다.
코딩 표준
PHP 코드 작성 방식 등을 검토하는 도구입니다.
- Pahout - 더 나은 PHP를 작성하기 위한 한 쌍의 프로그래밍 파트너입니다.
- 작곡가 정규화 - 작곡가.json을 정규화하기 위한 작곡가 플러그인을 제공합니다.
- EasyCodingStandard - CodeSniffer 및 PHP-CS-Fixer를 간단한 방법으로 사용할 수 있는 사용하기 쉬운 도구입니다.
- PHPas - PHP 코드의 스타일을 내 스타일로 포맷하고 아름답게 만드는 도구입니다.
- PHPArkitect - PHPArkitect는 작업 흐름에 일부 아키텍처 제약 검사를 추가하여 PHP 코드베이스를 일관되고 견고하게 유지하는 데 도움이 됩니다.
- PHP 코드 스니퍼 - PHPCS는 광범위한 코딩 표준에 맞게 코드를 확인하고 자동 수정합니다.
- PHPCheckstyle - 특정 코딩 규칙을 준수하는 데 도움이 되는 도구입니다.
- PHP Doc Check - 복잡도 측정항목을 사용하여 중요하지 않은 기능에 대한 문서 규칙을 적용합니다.
- PHP 포맷터 - 이 PHP 포맷터는 일관성을 보장하기 위해 PHP 프로젝트에 대한 몇 가지 대량 작업을 제공하는 것을 목표로 합니다.
- TLint - 이것은 Laravel 및 PHP에 대한 강화된 코드 규칙을 위한 독선적인 코드 린터(자동 서식 지원이 증가하고 있습니다!)입니다.
DIY
집에서 만든 정적 분석기의 기반이 될 수 있는 라이브러리입니다.
- Deptrac - 소프트웨어 계층 간의 종속성에 대한 규칙을 적용하는 정적 코드 분석 도구입니다.
- PHP 아키텍처 테스터 - 사용하기 쉬운 PHP용 아키텍처 테스트 도구
- PHPArkitect - 코드베이스에서 아키텍처 규칙을 적용하는 정적 코드 분석 도구
- PHP-cfg - PHP의 제어 흐름 그래프 구현입니다. IrcMaxwell이 작성했습니다.
- PHP 결합 감지기 - 코드에 원치 않는 결합 클래스가 없는지 확인하세요.
- PHP 파서 - Nikita Popov가 PHP로 작성했으며 PHP의 실제 문법을 기반으로 합니다.
- PHP 토큰 리플렉션 - 토큰화된 소스 코드만 사용하여 PHP 내부 리플렉션을 에뮬레이트하는 라이브러리입니다.
- PHPSandbox - PHPParser를 활용하여 샌드박스 코드가 안전하지 않은 코드를 실행하지 못하도록 방지하는 본격적인 PHP 5.3.2+ 샌드박스 클래스입니다.
- Reflection - PHP 프로젝트에 대한 정적 분석을 수행하는 리플렉션 라이브러리입니다.
- Better Reflection - docblock 유형 힌트 구문 분석과 같은 추가 기능을 갖춘 Reflection 라이브러리는 내부적으로 nikic의 PHP Parser를 사용합니다.
해결사
함께 제공되는 코드를 자동으로 수정하는 도구입니다.
- Rector - PHP 애플리케이션의 AST 기반 즉시 업그레이드
- FunctionFQNReplacer - 함수 호출에서 함수의 상대 참조를 절대 참조로 바꾸는 방법을 제공합니다.
- Phpactor - 이 프로젝트는 무거운 리팩토링 및 자체 검사 도구를 제공하는 것을 목표로 합니다.
- PHP BackSlasher - 백슬래시를 추가하여 모든 PHP 내부 함수와 상수를 네임스페이스에 추가하는 도구입니다.
- php-refactoring-browser - CLI 리팩토링 도구입니다.
- PHP CS Fixer - 코딩 표준 문제를 분석하고 해결하려고 시도합니다(PSR-1 및 PSR-2 호환).
- phpdoc to typehint - phpdoc 주석을 실제 Typehint(인수 및 반환)로 바꿉니다.
- php-scoper - PHAR에 번들로 포함된 코드를 분리하기 위해 파일/디렉토리의 모든 PHP 네임스페이스 접두사를 붙입니다.
- Transphpile - 기능 백포트를 사용하여 PHP 7을 작성하고 PHP 5.6을 실행합니다.
- PHP Weaver - 런타임 시 매개변수 유형을 분석하고 적절한 phpdoc을 생성합니다.
측정항목
코드 복잡성, 코드 줄 등을 측정하는 도구
- AST 지표 - 리팩터링이 필요한 코드를 식별하는 데 도움이 되도록 다양한 지표를 계산하고 아름다운 그래픽 인터페이스를 제공하는 초고속 정적 코드 분석기입니다.
- churn-php - 리팩토링을 위한 좋은 후보를 찾는 데 도움이 됩니다.
- 디자인 패턴 감지기 - PHP 코드에서 디자인 패턴을 감지합니다.
- dePHPend - dePHPend는 종속성 및 아키텍처를 분석하는 데 도움이 되며 두 가지 모두에 대한 제약 조건을 정의할 수 있습니다.
- Dissect - 어휘 및 구문 분석을 위한 도구 세트입니다.
- php-arguments-Detector - 인수가 너무 많지 않은지 확인하여 메소드의 복잡성을 제어하세요.
- php-smelly-code-Detector - PHP 코드 냄새 감지기.
- PHPLOC - PHP 애플리케이션 크기를 측정하고 다양한 구조를 계산하는 유틸리티입니다.
- PHP 지표 - 모든 종류의 지표를 계산하고 멋진 인터페이스에 표시합니다.
- PHP 의미 체계 버전 검사기 - 두 소스 세트를 비교하고 적용할 적절한 의미 체계 버전을 결정합니다.
- PhpStats - 병목 현상을 찾기 위해 대규모 프로젝트에 대한 통계, 지표, 종속성을 수집하고 다양한 그래프를 작성하는 도구입니다.
- PhpDependencyAnalytic - 정의된 아키텍처에 대한 종속성 그래프를 제공하고 확인하는 정적 코드 분석입니다.
- php-wording-Detector - 코드에 포함된 단어를 분석하고 분할하여 DDD 접근 방식을 확인하는 간단한 도구입니다.
- 품질 분석기 - 품질 분석기는 측정항목과 소스 코드를 시각화하는 도구입니다.
심상
PHP 코드를 그래픽 방식으로 표시하는 도구
- PHPcity - PHPCity는 도시 은유 시각화를 구현하고 객체 지향 방식으로 구현되는 PHP 프로젝트의 시각화를 제공합니다.
SaaS
PHP 코드에 대한 온라인 서비스는 대시보드를 제공합니다. 이전 도구를 사용하거나 자체 도구를 제공할 수 있습니다.
- Bliss - 실시간으로 코드를 자동으로 검토하고 코드 줄 단위로 코드의 가치를 보여줍니다.
- Codacy - Codacy: 자동화된 코드 검토.
- CodeBeaat - 기술 부채를 줄입니다. 리팩토링 기회를 찾으세요.
- 코드 환경 - Ruby, PHP 및 JavaScript 소스 코드에 대한 정적 분석을 호스팅합니다.
- CodeScene - PHP, JavaScript 등의 기술 부채 우선순위를 지정합니다.
- Codegrip - 코드 검토를 위한 더 스마트하고 안전한 방법
- Deepsource - DeepSource는 빠르게 움직이고 문제를 해결하지 않는 엔지니어링 팀을 위해 구축된 최신 정적 분석 플랫폼입니다.
- Insight - 소스 코드를 분석하여 프로젝트의 전반적인 품질을 저하시키는 문제를 찾는 SensioLabs 도구입니다.
- Insphpect - Insphpect는 PHP 코드의 유연성을 식별하고 더 나은 소프트웨어를 작성하는 데 도움이 되는 자동화된 코드 검토 도구입니다.
- RIPS - PHP 애플리케이션을 위한 뛰어난 보안 소프트웨어입니다. 취약점에 대한 소스 코드 정적 분석기.
- Scrutinizer - 지속적인 검사 플랫폼을 통해 코드 품질을 개선하고 버그가 생산되기 전에 찾아냅니다.
- Sourcegraph - 전체 코드베이스를 이해하고 검색합니다.
- SideCI - 코드 분석을 통한 자동화된 코드 검토를 위한 CI입니다.
- Laravelshift - Laravel 애플리케이션을 자동으로 업그레이드하는 방법입니다. Laravel 애플리케이션을 Laravel 4.2에서 최신 버전의 Laravel로 업그레이드하세요.
기타
- HHVM - Facebook의 해킹 언어. 버전 3.3.8까지 SCA를 추가하세요. 최신 버전에는 더 이상 없습니다.
- PHP Manipulator - PHP 소스 코드를 분석하고 수정하기 위한 라이브러리입니다.
- PHP Parser - PHP를 구문 분석하고 토큰과 AST를 추출하기 위한 NodeJS 라이브러리입니다.
- PHPQA - 단일 HTML 파일로 보고되는 많은 PHP 도구에 대한 래퍼입니다.
- Fixtro - 각 사전 커밋에서 실행할 수 있는 래퍼입니다. 많은 실행자(phpunit, phpmd, php-cs-fixer 등)에 대한 모든 종속성을 자체적으로 설치합니다.
- Coverage Checker - 여기에 있는 일부 도구를 변경된 코드에만 적용할 수 있는 도구입니다. 새로운 표준을 향해 나아가는 데 적합
- Composer Require Checker - 특정 Composer 패키지가 직접적인 Composer 종속성의 일부가 아닌 가져온 기호를 사용하는지 여부를 확인하는 CLI 도구입니다.
- 정적 분석 결과 베이스라이너(Static Analysis Results Baseliner) - 정적 분석 도구에서 기준선을 생성하는 도구입니다.