Laravel Pint - 미니멀리스트를 위한 PHP 코드 스타일 해결사

오랫동안 기다려온 광고 열차가 마침내 끝났습니다. Laravel 최신 오픈 소스 CLI 앱이 전 세계에 출시되었으며 이에 대한 모든 것을 알려드리기 위해 손을 뻗었습니다. 소개합니다Laravel Pint .

readme에서 "Laravel pint는 PHP-CS-Fixer 위에 구축된 미니멀리스트를 위한 제로 의존성 PHP 코드 스타일 해결사입니다."

이 글을 읽자마자 흥분이 되었고 매우 기뻤습니다. 현대PHP에서 우리는 기술을 연마하고 코드를 더 엄격하고 더 잘 테스트하고 일관된 코드 스타일을 유지하는 단계를 거쳤습니다. 이 모든 것은 PHP-FIG가 형성되고 PSR이 출시되기 시작했을 때 시작되었으며 고유한 게시 스타일 규칙이 있는 프레임워크와 함께 점점 더 강력해지고 있습니다. 이 패키지는 다르지 않으며 사전 설정을 기반으로 코드 스타일을 자동으로 테스트하고 수정합니다.

설치



Laravel Pint는 PHP 8.0 이상이 필요합니다.

Composer을 사용하여 Pint를 PHP 프로젝트에 설치할 수 있습니다.

#! /bin/bash
composer require laravel/pint --dev


Pint가 설치되면 프로젝트의 vendor/bin 디렉토리에서 pint 바이너리를 사용할 수 있습니다.

./vendor/bin/pint


러닝 파인트



Pint를 실행하면 수정된 파일 목록이 출력됩니다. -v 옵션을 사용하여 변경 사항을 자세히 볼 수 있습니다.

#! /bin/bash
./vendor/bin/pint -v


또한 Pint가 실제로 파일을 변경하지 않고 코드에서 스타일 오류를 검사하도록 하려면 --test 옵션을 사용할 수 있습니다.

#! /bin/bash
./vendor/bin/pint --test


핀트 구성



새로운 Laravel 애플리케이션을 사용하여 Laravel에 대한 사전 설정을 구성해 보겠습니다. pint.json 파일을 만들고 다음을 추가합니다.

{
    "preset": "laravel"
}


또한 특정 디렉토리에서 pint.json를 사용하려면 --config 옵션을 사용할 수 있습니다.

#! /bin/bash
pint --config vendor/my-company/coding-style/pint.json


프리셋



사전 설정은 코드의 코드 스타일 문제를 수정하는 데 사용할 수 있는 규칙 집합을 정의합니다. 기본적으로 Pint는 Laravel의 독창적인 코딩 스타일을 따라 문제를 해결하는 laravel 사전 설정을 사용합니다.

그러나 --preset 옵션을 전달하여 다른 사전 설정을 사용할 수 있습니다.

#! /bin/bash
pint --preset psr12


원하는 경우 프로젝트pint.json 파일에서 사전 설정을 설정할 수도 있습니다.

{
    "preset": "psr12"
}


현재 지원되는 사전 설정은 laravel, psr12 및 Symfony입니다.

규칙



규칙은 Pint가 코드의 코드 스타일 문제를 수정하는 데 사용할 스타일 지침입니다. 위에서 언급했듯이 사전 설정은 대부분의 PHP 프로젝트에 완벽해야 하는 미리 정의된 규칙 그룹이므로 일반적으로 포함된 개별 규칙에 대해 걱정할 필요가 없습니다.

그러나 원하는 경우 pint.json 파일에서 특정 규칙을 활성화하거나 비활성화할 수 있습니다.

{
    "preset": "laravel",
    "rules": {
        "simplified_null_return": true,
        "braces": false,
        "new_with_braces": {
            "anonymous_class": false,
            "named_class": false
        }
    }
}


Pint는 PHP-CS-Fixer 위에 구축됩니다. 따라서 해당 규칙을 사용하여 프로젝트의 코드 스타일 문제를 수정할 수 있습니다. PHP-CS-Fixer Configurator.

자세한 내용은 Github을 참조하십시오.

이 블로그를 읽어주셔서 감사합니다.

좋은 웹페이지 즐겨찾기