php-cs-fixer는 코드 포맷 도구입니다. 포맷 표준은 PSR-1, PSR-2 및 일부 심포니 표준입니다. 이 도구는 또한 Symfony, twig 및 기타 우수한 PHP 라이브러리와 동일한 제품군에서 제공됩니다.
설치 및 업데이트
PHP 5.3.6 이상이 필요합니다.
패키지된 phar 패키지를 직접 다운로드할 수 있습니다: php-cs-fixer.phar;
또는 wget을 통해 다운로드합니다(다음은 OSX 및 Linux에서의 사용법입니다):
wget http://get.sensiolabs.org/php-cs-fixer.phar -O php-cs-fixer
또는 컬을 통해 다운로드:
curl http://get.sensiolabs.org/php-cs-fixer.phar -o php-cs-fixer
다운로드가 완료된 후 실행 권한을 부여한 다음 bin 디렉터리로 이동하세요:
sudo chmod a+x php-cs-fixer sudo mv php-cs-fixer /usr/local/bin/php-cs-fixer
이렇게 하면 php-cs-fixer
명령을 직접 사용하여 어디에서나 호출할 수 있습니다. php-cs-fixer
命令来调用了。
也可以用过 Composer 来安装:
composer global require fabpot/php-cs-fixer
如果你是 Mac 用户、homebrew 用户并且已经 tap 过 homebrew/php 的话,也可以直接:
brew install php-cs-fixer
或者:
brew install homebrew/php/php-cs-fixer
如果后续需要更新的话:
php-cs-fixer self-update
如果是通过 homebrew 安装的:
brew upgrade php-cs-fixer
如果没有将执行文件放到 bin 目录下或者在 Windows需要使用 php php-cs-fixer.phar
代替 php-cs-fixer
。
用法
用法也很简单,最基本的命令参数就是 fix
,直接执行时会尽可能多的根据默认标准格式化代码:
# 格式化目录 如果是当前目录的话可以省略目录 php-cs-fixer fix /path/to/dir # 格式化文件 php-cs-fixer.phar fix /path/to/file
--verbose
选项用于展示应用了的规则,默认是文本(txt
)格式。
--level
选项用于控制需要使用的规则层级:
php-cs-fixer fix /path/to/project --level=psr0 php-cs-fixer fix /path/to/project --level=psr1 php-cs-fixer fix /path/to/project --level=psr2 php-cs-fixer fix /path/to/project --level=symfony
默认情况下执行的是 PSR-2 的所有选项以及一些附加选项(主要是 symfony 相关的)。还有一些属于『贡献级别』的选项,你可以通过 --fixers
选择性的添加,--fixers
的多个条件要用逗号分开:
php-cs-fixer fix /path/to/dir --fixers=linefeed,short_tag,indentation
如果有需要的话也可以使用 -name_of_fixer
采取黑名单的方式设定禁用哪些选项。如果同时设定了 --fixers
和 -name_of_fixer
,前者的优先级更高。
同时使用 --dry-run
和 --diff
命令可以显示出需要修改的汇总,但是并不实际修改。
通过以下方式也可以查看有哪些内容是会修改的,但是并不实际改动文件:
cat foo.php | php-cs-fixer fix --diff -
自定义配置
--config
选项可以用来设置选取目录以及文件进行分析并格式化,但是这个选项只能设置一些常见的已知的项目,比如 symfony:
# For the Symfony 2.3+ branch php-cs-fixer fix /path/to/sf23 --config=sf23
已有选项:
default 默认配置
magento magento 项目
sf23 symfony 的项目
更多时候,我们可以通过配置文件来自定义格式化选项以及搜索的目录和文件。自定义配置通过在项目根目录添加一个 .php_cs
文件的方式实现。
设置本身就是 PHP 代码,最后返回一个 SymfonyCSConfigInterface 的实例即可。你可以设置格式化的选项、级别、文件以及目录。
下面是一个简单的例子:
<?php $finder = Symfony\CS\Finder\DefaultFinder::create() ->exclude('somedir') // 忽略 somedir ->in(__DIR__) // 当前目录 ; return Symfony\CS\Config\Config::create() ->fixers(['strict_param', 'short_array_syntax']) // 添加两个选项 ->finder($finder) ;
如果你想完全自定义格式化选项,就需要将格式化级别清空,并指定好所有需要的选项:
<?php $finder = Symfony\CS\Finder\DefaultFinder::create() ->in(__DIR__) ; return Symfony\CS\Config\Config::create() ->level(Symfony\CS\FixerInterface::NONE_LEVEL) ->fixers(['trailing_spaces', 'encoding']) ->finder($finder) ;
你也可以通过在选项前面添加 -
的方式来禁用某些选项,比如下面这个例子不采用 PSR-0:
<?php $finder = Symfony\CS\Finder\DefaultFinder::create() ->exclude('somedir') ->in(__DIR__) ; return Symfony\CS\Config\Config::create() ->fixers(['-psr0']) ->finder($finder) ;
默认条件下的格式化级别是 symfony (最严格),你可以修改这个级别:
<?php return Symfony\CS\Config\Config::create() ->level(Symfony\CS\FixerInterface::PSR2_LEVEL) ;
通过这些设置选项的组合,可以很轻易的定制出自己想要的效果。
你也可以通过 --config-file
选项指定 .php_cs
文件的位置。
启用缓存可以在后续的执行中加快速度,通过以下方法设置:
<?php return Symfony\CS\Config\Config::create() ->setUsingCache(true) ;
编辑器插件
下面这些编辑器/IDE 的插件可以帮你简化格式化的工作:
Atom
NetBeans
PhpStorm
Sublime Text
Vim
格式化选项
psr0 [PSR-0]
PSR-0 的路径和命名空间标准encoding [PSR-1]
文件必须是不带 BOM 的 UTF-8 编码;short_tag [PSR-1]
只能使用<?php ?>
和<?= ?>
两种 PHP 代码标签;braces [PSR-2]
所有语句块都必须包含在花括号内,且位置以及缩进是符合标准的;class_definition [PSR-2]
class、trait、interfaces 关键字和名称之间只能有一个空格;-
elseif [PSR-2]
Mac 사용자, homebrew 사용자이고 homebrew/php를 녹화한 경우 직접 다음을 수행할 수도 있습니다.
使用elseif
替代else if
Composer를 사용하여 다음을 설치할 수도 있습니다.
rrreee rrreee - 또는:
rrreee나중에 업데이트해야 하는 경우: rrreee
🎜Usage🎜🎜사용법도 매우 간단합니다. 가장 기본적인 명령 매개변수는
홈브류를 통해 설치한 경우:
rrreee
실행 파일이 bin 디렉터리나 Windows에 없으면php 대신 <code>php php-cs-fixer.phar
를 사용해야 합니다. -cs-fixer .fix
입니다. 직접 실행하면 최대한 많은 코드가 기본 표준인 🎜rrreee🎜에 따라 형식화됩니다. --verbose 옵션은 적용된 규칙을 표시하는 데 사용됩니다. 기본값은 텍스트(<code>txt
) 형식입니다. 🎜🎜--level
옵션은 사용할 규칙의 수준을 제어하는 데 사용됩니다. 🎜rrreee🎜기본적으로 PSR-2의 모든 옵션과 일부 추가 옵션(주로 심포니 관련)이 실행됩니다. "기여도 수준"에 속하는 몇 가지 옵션도 있습니다.--fixers
를 통해 선택적으로 추가할 수 있습니다.--fixers
의 여러 조건은 쉼표로 구분해야 합니다. 🎜rrreee 🎜필요한 경우-name_of_fixer
를 사용하여 블랙리스트 사용을 비활성화할 옵션을 설정할 수도 있습니다.--fixers
와-name_of_fixer
가 모두 설정된 경우 전자가 더 높은 우선순위를 갖습니다. 🎜🎜--dry-run
및--diff
명령을 동시에 사용하면 수정해야 하는 요약을 표시할 수 있지만 실제로 수정하지는 않습니다. 🎜🎜다음 방법을 통해서도 어떤 내용이 수정되는지 확인할 수 있지만 실제로 파일이 변경되지는 않습니다. 🎜rrreee🎜Custom 구성🎜🎜--config
옵션을 사용하여 선택한 항목을 설정할 수 있습니다. 디렉터리 및 파일을 분석하고 형식을 지정하지만 이 옵션은 Symfony:🎜rrreee🎜기존 옵션:🎜- 🎜🎜기본 기본 구성🎜🎜🎜🎜magento magento project🎜🎜🎜🎜과 같은 일부 일반적으로 알려진 프로젝트만 설정할 수 있습니다. project🎜🎜
.php_cs
파일을 추가하여 수행됩니다. 🎜🎜설정 자체는 PHP 코드이며 마지막으로 SymfonyCSConfigInterface의 인스턴스를 반환합니다. 서식 옵션, 수준, 파일 및 디렉터리를 설정할 수 있습니다. 🎜🎜다음은 간단한 예입니다. 🎜rrreee🎜서식 지정 옵션을 완전히 사용자 정의하려면 서식 지정 수준을 지우고 모든 필수 옵션을 지정해야 합니다. 🎜rrreee🎜옵션 코드 앞에 -를 사용하여 특정 옵션을 비활성화합니다. 예를 들어 다음 예에서는 PSR-0을 사용하지 않습니다. 🎜rrreee🎜기본 형식 지정 수준은 Symfony(가장 엄격한 수준)이며 이 수준을 수정할 수 있습니다. 🎜rrreee 🎜 이러한 설정 옵션을 조합하면 원하는 효과를 쉽게 사용자 정의할 수 있습니다. 🎜🎜--config-file
옵션을 통해.php_cs
파일의 위치를 지정할 수도 있습니다. 🎜🎜캐싱을 활성화하면 다음 방법을 통해 설정 속도를 높일 수 있습니다. 🎜rrreee🎜Editor 플러그인🎜🎜다음 편집기/IDE 플러그인을 사용하면 서식 지정 작업을 단순화할 수 있습니다. 🎜- 🎜🎜Atom 🎜🎜 🎜🎜NetBeans🎜🎜🎜🎜PhpStorm🎜🎜🎜🎜Sublime Text🎜🎜🎜🎜Vim🎜🎜
- 🎜🎜🎜psr0 [PSR- 0]🎜 🎜 PSR-0 경로 및 네임스페이스 표준 🎜🎜🎜🎜🎜🎜🎜encoding [PSR-1]🎜🎜 파일은 BOM 없이 UTF-8로 인코딩되어야 합니다. 🎜🎜🎜🎜🎜🎜🎜short_tag [PSR-1]🎜🎜만 사용할 수 있습니다. ?php ?> 및
<?= ?>
는 두 개의 PHP 코드 태그입니다. 🎜🎜🎜🎜🎜🎜🎜중괄호 [PSR-2]🎜🎜 중괄호로 묶여 있으며 위치와 들여쓰기는 표준입니다. 🎜🎜🎜🎜🎜🎜🎜class_definition [PSR-2]🎜🎜 클래스, 특성, 인터페이스 키워드 및 이름 사이에만 공백이 있을 수 있습니다. 🎜elseif [PSR-2]🎜🎜else if
대신elseif
를 사용하세요. 🎜🎜🎜🎜🎜🎜🎜eof_ending [PSR-2 ]🎜🎜 파일은 다음으로 끝나야 합니다. 빈 줄;🎜🎜🎜 function_call_space [PSR-2]
함수 및 메서드 호출 시 함수 이름과 메서드 이름 및 매개변수 확장 사이에 공백을 사용할 수 없습니다.function_declaration [PSR-2]
함수 시 공백; 선언 사용은 PSR-2를 준수해야 합니다.- indentation [PSR-2]
코드는 탭 대신 들여쓰기를 위해 4개의 공백을 사용해야 합니다. ]
네임스페이스 선언 뒤에는 빈 줄이 있어야 합니다. linefeed [PSR-2]
모든 PHP 파일은 LF(Unix) 엔딩만 사용할 수 있습니다. PSR -2]
PHP 상수 true, false 및 null은 소문자여야 합니다.
lowercase_keywords [PSR-2]
PHP 키워드는 소문자여야 합니다.
method_ar Gument_space [ PSR- 2]
메소드가 선언되고 호출될 때 매개변수 사이에 쉼표 앞에 공백이 없어야 하며 쉼표 뒤에는 공백이 하나 있어야 합니다.multiple_use [PSR-2] 사용할 때마다 하나의 요소만 선언할 수 있습니다. ;
괄호 [PSR-2]괄호 양쪽에 공백이 있을 수 없습니다.
php_closing_tag [PSR-2]-
순수 PHP 파일은
? > ;
태그를 생략해야 합니다. single_line_after_imports [PSR-2] 각 use 문은 자체 줄에 있어야 하며 빈 줄이 있어야 합니다. use 문 블록 뒤;
trailing_spaces [PSR -2]비어 있지 않은 줄 뒤의 추가 공백을 삭제합니다.
?>
标签;single_line_after_imports [PSR-2]
每个 use 声明独立一行,且 use 语句块之后要有一个空白行;trailing_spaces [PSR-2]
删除非空行之后多余的空格;visibility [PSR-2]
每个属性和方法都必须指定作用域是public
、protected
还是private
,abstract
和final
必须位于作用域关键字之前,static
必须位于作用域之后;array_element_no_space_before_comma [symfony]
数组声明中,逗号之前不能有空格;array_element_white_space_after_comma [symfony]
数组声明中,逗号之后必须有一个人空格;blankline_after_open_tag [symfony]
PHP 开始标签的同一行不能有代码,且下面必须有一个空白行;concat_without_spaces [symfony]
点连接符左右两边不能有多余的空格;double_arrow_multiline_whitespaces [symfony]
=>
操作符两端不能有多个空白行;duplicate_semicolon [symfony]
删除重复的分号;empty_return [symfony]
return 语句如果没有任何返回的话直接写 return 即可(不用 return null);extra_empty_lines [symfony]
删除多余的空白行;function_typehint_space [symfony]
修正函数参数和类型提示之间的缺失的空格问题;include [symfony]
include
和文件路径之间需要有一个空格,文件路径不需要用括号括起来;join_function [symfony]
使用join
替换implode
函数;list_commas [symfony]
删除list
语句中多余的逗号;method_argument_default_value [symfony]
函数参数中有默认值的参数不能位于无默认值的参数之前;multiline_array_trailing_comma [symfony]
多行数组最后一个元素应该也有一个逗号;namespace_no_leading_whitespace [symfony]
命名空间前面不应该有空格;new_with_braces [symfony]
使用 new 新建实例时后面都应该带上括号;no_blank_lines_after_class_opening [symfony]
类开始标签后不应该有空白行;no_empty_lines_after_phpdocs [symfony]
PHP 文档块开始开始元素下面不应该有空白行;-
object_operator [symfony]
visibility [PSR-2]🎜🎜 범위가T_OBJECT_OPERATOR
(->
public
, protected 또는private
인지 지정하고,abstract
및final
은 필수입니다. 범위 키워드 앞에 있어야 하며,static
은 범위 뒤에 위치해야 합니다. 🎜🎜🎜🎜🎜🎜🎜array_element_no_space_before_comma [symfony]🎜🎜 배열 선언에서 쉼표 앞에 공백이 있을 수 없습니다. 🎜🎜🎜🎜array_element_white_space_after_comma [symf ony]🎜🎜 배열 선언에서 쉼표 뒤에 하나가 있어야 합니다. 개인 공백; 🎜🎜🎜🎜🎜🎜🎜blankline_after_open_tag [symfony]🎜🎜 PHP는 다음과 같은 줄에 코드를 가질 수 없습니다. 오프닝 태그, 아래에 빈 줄이 있어야 합니다. 🎜🎜🎜🎜🎜concat_without_spaces [symfony]🎜 🎜 도트 커넥터 왼쪽과 오른쪽에 추가 공백이 있을 수 없습니다. 🎜🎜🎜🎜🎜🎜🎜double_arrow_multiline_whitespaces 아무거나] 연산자의 양쪽 끝에 여러 개의 빈 줄이있을 수 없습니다 [symfony]🎜🎜 return 문이 아무것도 반환하지 않으면 그냥 return(return null 없이)을 작성하세요. _공간 [symfony]🎜🎜 함수 매개변수와 유형 힌트 사이에 누락된 공백 문제를 수정합니다. 🎜🎜🎜🎜🎜🎜🎜include [symfony] 🎜 🎜include
와 파일 경로 사이에 공백이 있어야 합니다. 파일 경로를 괄호로 묶을 필요는 없습니다. 🎜🎜🎜🎜join_function [symfony]🎜🎜join
사용 🎜🎜🎜 🎜🎜🎜🎜list_commas [symfony]🎜🎜list
문에서 추가 쉼표를 삭제하세요. 🎜🎜🎜🎜🎜🎜🎜method_argument_default_value [symfony] 🎜🎜 함수 매개변수에 기본값이 있는 매개변수는 기본값 없이 매개변수 앞에 배치됩니다. 🎜🎜🎜🎜🎜🎜🎜multiline_array_trailing_comma [symfony]🎜🎜 여러 줄 배열의 마지막 요소에도 쉼표가 있어야 합니다. 🎜🎜 없어야합니다 🎜🎜🎜🎜🎜🎜🎜new_with_braces [symfony]🎜🎜 new를 사용하여 새 인스턴스를 생성할 때 그 뒤에 괄호가 있어야 합니다. 온니] 🎜🎜 저기요 클래스 열기 태그 뒤에는 빈 줄이 없어야 합니다. 🎜🎜🎜🎜🎜🎜🎜no_empty_lines_after_phpdocs [symfony]🎜🎜 PHP 문서 블록 열기 요소 아래에는 빈 줄이 없어야 합니다. 🎜 🎜T_OBJECT_OPERATOR
(->
) 양쪽 끝에 공백이 없어야 합니다. 🎜🎜🎜 operators_spaces [symfony]
이진 연산자는 양쪽 끝에 최소한 하나의 공백이 있습니다.phpdoc_indent [symfony]
phpdoc은 들여쓰기를 유지해야 합니다. phpdoc_inline_tag [심포니] 태그와 후속 콘텐츠가 항상 한 줄에 있도록 phpdoc 인라인 태그 형식을 수정하세요.
phpdoc_no_access [symfony]@access
가 phpdoc에 표시되지 않아야 합니다.@access
不应该出现在 phpdoc 中;phpdoc_no_empty_return [symfony]
@return void
和@return null
不应该出现在 phpdoc 中;phpdoc_no_package [symfony]
@package
和@subpackage
不应该出现在 phpdoc 中;phpdoc_params [symfony]
@param
,@throws
,@return
,@var
, 和@type
等 phpdoc 标签都要垂直对齐;phpdoc_scalar [symfony]
phpdoc 标量类型声明时应该使用int
而不是integer
,bool
而不是boolean
,float
而不是real
或者double
;phpdoc_separation [symfony]
phpdoc 中注释相同的属性应该放在一起,不同的属性之间应该有一个空白行分割;phpdoc_short_description [symfony]
phpdoc 的简要描述应该以.
、!
或?
结尾;phpdoc_to_comment [symfony]
文档块应该都是结构化的元素;phpdoc_trim [symfony]
除了文档块最开始的部分和最后的部分,phpdoc 开始和结束都应该是有内容的;phpdoc_type_to_var [symfony]
@type
需要使用@var
代替;phpdoc_types [symfony]
phpdoc 中应该正确使用大小写;phpdoc_var_without_name [symfony]
@var
和@type
注释中不应该包含变量名;pre_increment [symfony]
不应该使用++i
或--i
的用法;print_to_echo [symfony]
如果可能的话,使用echo
代替print
语句;remove_leading_slash_use [symfony]
删除use
前的空行;remove_lines_between_uses [symfony]
删除use
语句块中的空行;return [symfony]
return
之前应该有一个空行;self_accessor [symfony]
在当前类中使用self
代替类名;short_bool_cast [symfony]
bool
类型数据前不应该试用两个感叹号;single_array_no_trailing_comma [symfony]
PHP 单行数组最后一个元素后面不应该有空格;single_blank_line_before_namespace [symfony]
命名空间声明前应该有一个空白行;single_quote [symfony]
简单字符串应该使用单引号代替双引号;spaces_after_semicolon [symfony]
修复分号后面的空格;spaces_before_semicolon [symfony]
禁止只有单行空格和分号的写法;spaces_cast [symfony]
变量和修饰符之间应该有一个空格;standardize_not_equal [symfony]
使用<>
代替!=
;ternary_spaces [symfony]
三元运算符之间的空格标准化;trim_array_spaces [symfony]
数组需要格式化成和函数/方法参数类似,上下没有空白行;unalign_double_arrow [symfony]
不对其=>
phpdoc_no_empty_return [symfony]-
🎜
phpdoc_no_package [symfony]@package
및@subpackage
는 phpdoc에 표시되어서는 안 됩니다. 🎜🎜🎜🎜🎜🎜🎜phpdoc_params [symfony]🎜🎜@param
@throws
,@return
,@var
및@type
과 같은 phpdoc 태그는 수직으로 정렬되어야 합니다 🎜 🎜 🎜🎜🎜🎜🎜phpdoc_scalar [symfony]🎜🎜 phpdoc 스칼라 유형 선언에서는integer
대신int
를,대신 <code>bool
을 사용해야 합니다.real
또는double
대신 boolean,float
동일한 속성은 함께 묶어야 하며, 서로 다른 속성은 빈 줄로 구분해야 합니다. 🎜🎜🎜🎜🎜🎜🎜phpdoc_short_description [symfony]🎜🎜 phpdoc에 대한 간략한 설명은.
로 끝나야 합니다.!
또는?
end; 🎜🎜🎜🎜🎜🎜🎜phpdoc_to_comment [symfony]🎜🎜 문서 블록은 모두 구조화된 요소여야 합니다. ]🎜🎜 문서 블록의 첫 번째와 마지막 부분을 제외하고 phpdoc의 시작과 끝에 내용이 있어야 합니다. 🎜🎜🎜🎜🎜🎜🎜phpdoc_type_to_var [symfony]🎜🎜@type
이 필요합니다. 대신@var
를 사용했습니다. 🎜🎜🎜🎜🎜phpdoc_types [symfony]🎜🎜 phpdoc에서는 대문자와 소문자를 올바르게 사용해야 합니다. 🎜@ var 및@type
주석에는 변수 이름이 포함되어서는 안 됩니다. 🎜🎜🎜🎜🎜🎜🎜pre_increment [symfony]🎜🎜는++i
를 사용하면 안 됩니다. > 또는 --i; 🎜🎜🎜🎜🎜🎜🎜print_to_echo [symfony]🎜🎜 가능하다면print
대신echo
를 사용하세요. 🎜 🎜🎜🎜🎜🎜🎜remove_leading_slash_use [symfony]🎜🎜사용
하기 전에 빈 줄을 삭제하세요. 🎜🎜🎜🎜🎜🎜🎜remove_lines_between_uses [symfony]🎜 🎜사용
삭제 > block return 앞에 빈 줄이 있어야 합니다. [symfony]🎜🎜return
; 🎜🎜🎜🎜🎜🎜🎜self_accessor [symfony]🎜🎜 현재 클래스에서는self
를 사용하세요. 클래스 이름 대신 🎜🎜🎜🎜🎜🎜🎜short_bool_cast [symfony]🎜🎜bool
은 데이터 유형 앞에 두 개의 느낌표를 사용해서는 안 됩니다. ]🎜🎜 저기요 PHP 단일 행 배열의 마지막 요소 뒤에는 공백이 없어야 합니다. 🎜🎜🎜🎜🎜🎜🎜single_blank_line_before_namespace [symfony]🎜🎜 네임스페이스 선언 앞에는 빈 줄이 있어야 합니다. 임포니 ]🎜🎜 간단한 문자열은 큰따옴표 대신 작은따옴표를 사용해야 합니다. 🎜🎜🎜🎜🎜🎜🎜spaces_after_semicolon [symfony]🎜🎜 세미콜론 뒤의 공백 수정; ymfony]🎜🎜 금지된 싱글만- 줄 공백 및 세미콜론 🎜🎜🎜🎜spaces_cast [symfony]🎜🎜 변수와 수정자 사이에는 공백이 있어야 합니다. 🎜🎜🎜🎜🎜🎜🎜standardize_not_equal [symfony]🎜🎜 사용 ;> 대신 🎜🎜🎜🎜🎜🎜🎜ternary_spaces [symfony]🎜🎜 삼항 연산자 사이의 공백을 표준화합니다. 🎜 배열은 다음을 수행해야 합니다. 위아래에 빈 줄이 없이 함수/메서드 매개변수와 유사한 형식이어야 합니다. 🎜🎜🎜unalign_double_arrow [symfony]🎜🎜=>
를 사용하지 마세요. 🎜🎜🎜 🎜🎜🎜 🎜unalign_equals [symfony]🎜🎜는 부호와 같지 않습니다.🎜🎜🎜 unary_operators_spaces [symfony]
단항 연산자와 피연산자는 인접해야 합니다.unneeded_control_parentheses [symfony]
제어 구조 문에서 중복되는 괄호를 제거합니다.
unused_use [심포니 ] 사용하지 않는 사용문 삭제;
whitespacy_lines [symfony] 빈 줄의 추가 공백 삭제;
@return void
및 @return null
은 phpdoc에 표시되어서는 안 됩니다. PHP 비디오 튜토리얼"