코멘트를 사용하여 PHPCS 경고를 억제하려면 어떻게 해야 합니까?
나의TestMyClass.php
는 같은 파일(유닛 테스트 클래스)에 2개의 클래스 정의를 가지고 있으며, PHP 코드 스니퍼는 각 클래스가 파일 자체에 있어야 한다고 불평합니다.어떻게 하면 이 경고를 억제할 수 있을까요?
class MyClassImpl implements MyInterface
{
// ...
}
class MyClassTest extends \PHPUnit_Framework_TestCase
{
// ...
}
PHP_CodeSniffer가 코멘트를 사용하여 파일 내의 특정 파일 또는 행을 무시하도록 할 수 있습니다.https://github.com/squizlabs/PHP_CodeSniffer/wiki/Advanced-Usage#ignoring-files-and-folders
이 경우 두 번째 클래스 정의에서 오류가 생성되므로 두 번째 정의를 다음과 같이 작성해야 합니다.
// @codingStandardsIgnoreStart
class MyClassTest extends \PHPUnit_Framework_TestCase
{
// @codingStandardsIgnoreEnd
// ...
}
그러나 @codingStandardsIgnoreFile 코멘트를 사용하거나 명령줄에서 제외를 지정하여 파일 전체를 무시하도록 선택할 수도 있습니다(자세한 내용은 이전 링크를 참조하십시오).
이 작업을 자주 수행하고 코드에 주석을 추가하지 않으려면 사용자 지정 코딩 표준을 만들 수도 있습니다.현재 PSR2 표준을 사용하고 있는 경우, XML 파일(mystandard.xml 등)을 작성하고, 다음의 내용을 포함합니다.
<?xml version="1.0"?>
<ruleset name="MyStandard">
<description>My custom coding standard.</description>
<rule ref="PSR2" />
<rule ref="PSR1.Classes.ClassDeclaration.MultipleClasses">
<severity>0</severity>
</rule>
</ruleset>
다음으로 다음과 같이 PHP_CodeSniffer를 실행합니다.phpcs --standard=/path/to/mystandard.xml /path/to/code
독자적인 룰 세트를 가지는 것으로, 에러 메세지의 변경, 메시지의 중대도 또는 타입의 변경, 다른 표준의 체크, 글로벌 무시 룰의 설정 등, 많은 작업을 실시할 수 있습니다.자세한 내용은 이쪽:https://github.com/squizlabs/PHP_CodeSniffer/wiki/Annotated-ruleset.xml
다음의 코멘트를 사용하면, 파일의 임의의 부분을 무시할 수 있습니다.
파일에 대한 모든 스니프 무시: 무시합니다.
<?php
// phpcs:ignoreFile
현재 행과 다음 행만 무시합니다.
// phpcs:ignore
public function store($myArray)
현재 행 무시:
public function store($myArray) // phpcs:ignore
파일의 특정 행 수를 무시합니다.
// phpcs:disable
public function store($myArray): void
{
if (count($myArray) > 3) {
// Humongous amount of legacy code you don't want to look at
}
return;
}
// phpcs:enable
와 함께// phpcs:ignore
그리고.// phpcs:disable
또한 비활성화할 메시지, 스니프, 카테고리 또는 표준을 지정할 수도 있습니다.다음은 예를 제시하겠습니다.
// phpcs:ignore Squiz.Arrays.ArrayDeclaration.SingleLineNotAllowed
$foo = [1,2,3];
이 주제에 대한 자세한 내용을 보려면 Wiki를 방문하십시오.몇 가지 예는 거기에서 따온 것이다.
그@codingStandards
구문은 버전 현재 권장되지 않습니다.3.2.0
,사용하다phpcs
대신.
몇 가지 예:
// phpcs:disable
// phpcs:ignore
// phpcs:enable
상세한 것에 대하여는, 다음의 페이지를 참조해 주세요.https://github.com/squizlabs/PHP_CodeSniffer/wiki/Advanced-Usage#ignoring-parts-of-a-file
비록 당신이 특정 파일에 관심이 없다면, 나는 또한 이것을 제안하고 싶지만, 나는 톱 답변을 좋아합니다.
다음 명령을 실행합니다.
phpcs --config-set show_warnings 0
https://github.com/squizlabs/PHP_CodeSniffer/wiki/Configuration-Options#hiding-warnings-by-default 를 참조해 주세요.
이 방법으로 설정을 할 경우 벤더 폴더를 삭제하거나 라이브러리를 업데이트하면 설정이 삭제되고 다시 설정해야 합니다.
언급URL : https://stackoverflow.com/questions/16039362/how-can-i-suppress-phpcs-warnings-using-comments
'source' 카테고리의 다른 글
Window.resize 또는 document.resize 중 어느 것이 동작하고 어떤 것이 동작하지 않는가?VueJS (0) | 2023.01.19 |
---|---|
실행 중인 Python 응용 프로그램의 스택 추적 표시 (0) | 2023.01.19 |
데이터베이스 서버에 연결할 수 없습니다(mysql 워크벤치). (0) | 2023.01.19 |
MyIsam 스토리지 엔진에만 적용되는 가장 일반적이고 중요한 SQL 명령어는 무엇입니까? (0) | 2023.01.19 |
http://localhost CORS 오리진이 작동하지 않는 이유는 무엇입니까? (0) | 2023.01.19 |