PSR-4 Autoloader를 준수하지 않는 클래스를 찾는 데 도움이되는 사용자 정의 PHP 코드 스나이프 스니핑.

이 냄새를 시도하려면 ./tests/demo를 방문하십시오.
이 스 니프는 클래스뿐만 아니라 인터페이스와 특성에도 적용됩니다.
이 스 니프는 네임 스페이스와 클래스 이름이 모두 PSR-4 프로젝트 구조와 일치하는지 확인합니다.
이 Sniff는 composer.json Autoloading 구성을 존중하므로 네임 스페이스 접두사와 기본 디렉토리 간의 매핑을 선언 할 필요가 없습니다.
psr4fixer 클래스 이름이 파일 이름과 일치 해야하는지 확인하고 파일 이름에 해당하지 않으면 클래스 이름을 수정합니다. 네임 스페이스를 확인하지 않습니다.
대조적으로, Suin/PHPCS-PSR4-Sniff는 클래스 이름뿐만 아니라 네임 스페이스도 확인합니다.
slevomatcodingstandard.files.typenamematchesfilename은 네임 스페이스와 클래스 이름이 PSR-0/PSR-4 프로젝트 구조를 따르는 여부를 확인하기위한 사용자 정의 PHP 코드 스나이프입니다.
이 스 니프는 suin/phpcs-psr4-sniff와 유사하지만 PSR-0/PSR-4 프로젝트 구조에 대한 명시적인 구성이 필요합니다. Suin/PHPCS-PSR4-SNIFF는 작곡가의 자동 조정 구성을 따르는 암시 적 방식을 취합니다.
composer require --dev suin/phpcs-psr4-sniff
처음에는 프로젝트의 루트에서 PHPCS Ruleset XML (phpcs.xml.dist 또는 phpcs.xml) 파일을 만듭니다.
<? xml version = " 1.0 " ?>
< ruleset name = " My Project " >
<!-- Specify directory that composer.json is placed. Usually it would be
project root directory. -->
< arg name = " basepath " value = " . " />
<!-- Relative path to your ruleset.xml -->
< rule ref = " vendor/suin/phpcs-psr4-sniff/src/Suin " />
<!-- Optional: If you have to specify composer.json path, please add
following section. -->
< rule ref = " Suin.Classes.PSR4 " >
< properties >
<!-- composerJsonPath must be relative path to "basepath" -->
< property name = " composerJsonPath " value = " sub-dir/composer.json " />
</ properties >
</ rule >
</ ruleset >그런 다음 명령으로 실행합니다.
vendor/bin/phpcs src
자세한 내용은 ChangElog를 참조하십시오.
메인 리포지토리에 문제 또는 당김 요청을 보냅니다.