PHP CodeSnier 가져오기 방법
Contribution Guide
뭐, 아주 섬세하게 썼네.
<?php
namespace Vendor\Package;
use FooInterface;
use BarClass as Bar;
use OtherVendor\OtherPackage\BazClass;
class Foo extends Bar implements FooInterface
{
public function sampleMethod($a, $b = null)
{
if ($a === $b) {
bar();
} elseif ($a > $b) {
$foo->bar($arg1);
} else {
BazClass::bar($arg2, $arg3);
}
}
final public static function bar()
{
// method body
}
}
정직 {}과 같은 위치에 대해서는 다음과 같은 상황에서 자동성형을 희망합니다. final public static function bar(){
// method body
}
따라서 이번 PSR-2의 인코딩 규약을 실시하기 위한 인코딩은 VS코드에 인코딩 규약의 확장 기능을 검사하는 가져오는 방법을 명확하게 기재하였다.PHP_코드스니어 검사는 패키지로 할 수 있지만, 이번 베스코드의 확장 기능도 준비돼 있어 그걸로 하기로 했다.
PHP CodeSnier란
PHP_CodeSnier는 두 개의 PHP 스크립트를 설정합니다.
이번 코드 검사는 확장 기능으로 실시할 수 있다.
단, 확장 기능을 사용하기 위해서는 호스트에'php cs fixer'를 설치해야 합니다.
php cs fixer 가져오기 방법
compooser 명령을 사용하여 php-cs-fixer를 설치합니다.
composer require --dev friendsofphp/php-cs-fixer
composer.json에 로그인한 경우 아래 명령만 있으면 됩니다.composer install
이후 정상적으로 설치되었는지 확인하기 위해 아래 명령을 클릭하여 버전이 표시되는지 확인하세요.$ ./vendor/bin/php-cs-fixer --version
PHP CS Fixer 3.0.0 Constitution by Fabien Potencier and Dariusz Ruminski
성형 설정 파일 생성하기
php-cs-fixer는 세밀한 설정을 하지 않아도 성형을 할 수 있지만 성형 방법도 세밀한 맞춤형을 할 수 있다.
성형 설정을 당신이 좋아하는 것으로 만들려면 먼저
.php_cs.dist
라는 이름으로 성형 규칙 설정 파일을 만듭니다.※.php_cs.디스트php_cs 파일 두 개가 있다면php_cs 우선 불러옵니다.
.php_cs.dist는 팀 공유입니다.php_cs는 개발자 개인의 물건으로도 사용할 수 있습니다.
(.php cs gitignore 때문에 Giit에 제출되지 마십시오.)
다음은 설정 파일입니다.
<?php declare(strict_types=1);
$finder = PhpCsFixer\Finder::create()
->in([
__DIR__ . '/app',
__DIR__ . '/config',
__DIR__ . '/database/factories',
__DIR__ . '/database/seeds',
__DIR__ . '/routes',
__DIR__ . '/tests',
]);
$config = new PhpCsFixer\Config();
return $config
->setRiskyAllowed(true)
->setRules([
'@PSR2' => true,
'blank_line_after_opening_tag' => false,
'linebreak_after_opening_tag' => false,
'declare_strict_types' => false,
'phpdoc_types_order' => [
'null_adjustment' => 'always_last',
'sort_algorithm' => 'none',
],
'no_superfluous_phpdoc_tags' => false,
'global_namespace_import' => [
'import_classes' => true,
'import_constants' => true,
'import_functions' => true,
],
'php_unit_test_case_static_method_calls' => [
'call_type' => 'this'
],
'phpdoc_align' => [
'align' => 'left',
],
'not_operator_with_successor_space' => true,
])
->setFinder($finder);
※ '@PSR2' => true
, 대체'@PhpCsFixer:risky' => true
문헌도 있습니다.단,
PhpCsFixer:risky
php 버전 8에서는 움직이지 않습니다.파일 설정에 관해서는 아래의 도구를 사용하면 개인의 취향에 따라 설정할 수 있다.
추가할 규칙 프리셋 및 규칙을 선택하면 설정 파일이 작성됩니다.
PHP-CS-Fixer Configurator
또한 코드가 성형되면 파일
.php-cs-fixer.cache
이 생성된다.이 파일은 Git 관리 범위에 있지 않으니
.gitignore
에 추가하세요..php-cs-fixer.cache
정형을 실시하다
php-cs-fixer가 준비되어 있기 때문에 여기서부터 실제 성형을 시작합니다.
PHP_코드스니어 검사에 따르면 성형을 하지 않았기 때문에 오류가 있을 수 있다.
./vendor/bin/phpcs --report=summary .
다음 명령을 통해 정형할 파일의 내용을 확인할 수 있다.(이때 드라이런 때문에 실제로 성형 수정을 하지 않았다)# dry run
$ ./vendor/bin/php-cs-fixer fix -v --diff --dry-run
실제 성형을 할 때 선택할 수 있는 --dry-run을 넣지 않고 명령을 실행한다.# fix
$ ./vendor/bin/php-cs-fixer fix -v --diff
다시 PHPCodeSniffier 검사에서 오류가 발생하지 않았는지 확인합니다../vendor/bin/phpcs --report=summary .
확장된 가져오기 방법
라벨 측 영입이 끝났기 때문에 이번에 VS코드가 도입됐다.
설치하다.
VScode의 확장 설치 화면에서 [php cs fixer]로 검색하여 아래 포획된 php cs fixer(0.2.2)를 설치합니다.
settings.json 수정
PHP CS Fixer 플러그인을 설치한 후 파일 settings를 설정합니다.json을 수정합니다.
다음 명령 등을 실행합니다. settings.제이슨을 엽니다.
command + shift + p
settings.json에 다음 항목을 추가합니다.
저장할 때 성형해야 한다.
경로에 관해서는 방금composier에 php-cs-fixer가 설치되어 있었기 때문에bin/아래에 php-cs-fixer가 있을 거예요. 저쪽을 참조하세요.
{
"php-cs-fixer.onsave": true, // 保存時に整形を実行
"php-cs-fixer.executablePath": "[プロジェクト名]/vendor/bin/php-cs-fixer", // php-cs-fixerのパス
}
동작 확인
VScode 편집을 사용하여 저장된 코드가 자동으로 성형되는지 확인합니다.
public function aaa() {
echo "Hello";
}
↓
public function aaa()
{
echo "Hello";
}
참고 문장
Reference
이 문제에 관하여(PHP CodeSnier 가져오기 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/naoki0722/articles/e2181005ca4c5f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)