PHP-CS-Fixer Configurator
source link: https://mlocati.github.io/php-cs-fixer-configurator/#version:3.8
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
align_multiline_comment
Each line of multi-line DocComments must have an asterisk [PSR-5] and must be aligned with the first one.
array_push
Converts simple usages of array_push($x, $y);
to $x[] = $y;
.
backtick_to_shell_exec
Converts backtick operators to shell_exec
calls.
binary_operator_spaces
Binary operators should be surrounded by space as configured.
blank_line_after_opening_tag
Ensure there is no code on the same line as the PHP open tag and it is followed by a blank line.
blank_line_before_statement
An empty line feed must precede any configured statement.
braces
The body of each structure MUST be enclosed by braces. Braces should be properly placed. Body of braces should be properly indented.
cast_spaces
A single space or none should be between cast and variable.
class_attributes_separation
Class, trait and interface elements must be separated with one or none blank line.
class_definition
Whitespace around the keywords of a class, trait, enum or interfaces definition should be one space.
class_keyword_remove
Converts ::class
keywords to FQCN strings.
class_reference_name_casing
When referencing an internal class it must be written using the correct casing.
combine_consecutive_issets
Using isset($var) &&
multiple times should be done in one call.
comment_to_phpdoc
Comments with annotation should be docblock when used on structural elements.
concat_space
Concatenation should be spaced according configuration.
constant_case
The PHP constants true
, false
, and null
MUST be written using the correct casing.
control_structure_continuation_position
Control structure continuation keyword must be on the configured line.
date_time_create_from_format_call
The first argument of DateTime::createFromFormat
method must start with !
.
date_time_immutable
Class DateTimeImmutable
should be used instead of DateTime
.
declare_equal_normalize
Equal sign in declare statement should be surrounded by spaces or not following configuration.
declare_parentheses
There must not be spaces around declare
statement parentheses.
dir_constant
Replaces dirname(__FILE__)
expression with equivalent __DIR__
constant.
doctrine_annotation_array_assignment
Doctrine annotations must use configured operator for assignment in arrays.
doctrine_annotation_braces
Doctrine annotations without arguments must use the configured syntax.
echo_tag_syntax
Replaces short-echo <?=
with long format <?php echo
/<?php print
syntax, or vice-versa.
elseif
The keyword elseif
should be used instead of else if
so that all control keywords look like single words.
empty_loop_body
Empty loop-body must be in configured style.
empty_loop_condition
Empty loop-condition must be in configured style.
encoding
PHP code MUST use only UTF-8 without BOM (remove BOM).
ereg_to_preg
Replace deprecated ereg
regular expression functions with preg
.
error_suppression
Error control operator should be added to deprecation notices and/or removed from other cases.
escape_implicit_backslashes
Escape implicit backslashes in strings and heredocs to ease the understanding of which are special chars interpreted by PHP and which not.
explicit_indirect_variable
Add curly braces to indirect variables to make them clear to understand. Requires PHP >= 7.0.
explicit_string_variable
Converts implicit variables into explicit ones in double-quoted strings or heredoc syntax.
final_class
All classes must be final, except abstract ones and Doctrine entities.
final_public_method_for_abstract_class
All public
methods of abstract
classes should be final
.
fopen_flags
The flags in fopen
calls must omit t
, and b
must be omitted or included consistently.
full_opening_tag
PHP code must use the long <?php
tags or short-echo <?=
tags and not other tag variations.
fully_qualified_strict_types
Transforms imported FQCN parameters and return types in function arguments to short version.
function_declaration
Spaces should be properly placed in a function declaration.
function_to_constant
Replace core functions calls returning constants with the constants.
function_typehint_space
Ensure single space between function's argument and its typehint.
general_phpdoc_annotation_remove
Configured annotations should be omitted from PHPDoc.
get_class_to_class_keyword
Replace get_class
calls on object variables with class keyword syntax.
global_namespace_import
Imports or fully qualifies global classes/functions/constants.
group_import
There MUST be group use for the same namespaces.
header_comment
Add, replace or remove header comment.
include
Include/Require and file path should be divided with a single space. File path should not be placed under brackets.
increment_style
Pre- or post-increment and decrement operators should be used if possible.
is_null
Replaces is_null($var)
expression with null === $var
.
linebreak_after_opening_tag
Ensure there is no code on the same line as the PHP open tag.
list_syntax
List (array
destructuring) assignment should be declared using the configured syntax. Requires PHP >= 7.1.
lowercase_static_reference
Class static references self
, static
and parent
MUST be in lower case.
magic_constant_casing
Magic constants should be referred to using the correct casing.
magic_method_casing
Magic method definitions and calls must be using the correct casing.
mb_str_functions
Replace non multibyte-safe functions with corresponding mb function.
method_argument_space
In method arguments and method call, there MUST NOT be a space before each comma and there MUST be one space after each comma. Argument lists MAY be split across multiple lines, where each subsequent line is indented once. When doing so, the first item in the list MUST be on the next line, and there MUST be only one argument per line.
method_chaining_indentation
Method chaining MUST be properly indented. Method chaining with different levels of indentation is not supported.
modernize_strpos
Replace strpos()
calls with str_starts_with()
or str_contains()
if possible.
modernize_types_casting
Replaces intval
, floatval
, doubleval
, strval
and boolval
function calls with according type casting operator.
multiline_comment_opening_closing
DocBlocks must start with two asterisks, multiline comments must start with a single asterisk, after the opening slash. Both must end with a single asterisk before the closing slash.
multiline_whitespace_before_semicolons
Forbid multi-line whitespace before the closing semicolon or move the semicolon to the new line for chained calls.
native_constant_invocation
Add leading \
before constant invocation of internal constant to speed up resolving. Constant name match is case-sensitive, except for null
, false
and true
.
native_function_casing
Function defined by PHP should be called using the correct casing.
new_with_braces
All instances created with new
keyword must (not) be followed by braces.
no_alias_language_construct_call
Master language constructs shall be used instead of aliases.
no_alternative_syntax
Replace control structure alternative syntax to use braces.
no_binary_string
There should not be a binary flag before strings.
no_blank_lines_after_phpdoc
There should not be blank lines between docblock and the documented element.
no_blank_lines_before_namespace
There should be no blank lines before a namespace declaration.
no_break_comment
There must be a comment when fall-through is intentional in a non-empty case body.
no_closing_tag
The closing ?>
tag MUST be omitted from files containing only PHP.
no_extra_blank_lines
Removes extra blank lines and/or blank lines following configuration.
no_homoglyph_names
Replace accidental usage of homoglyphs (non ascii characters) in names.
no_leading_namespace_whitespace
The namespace declaration line shouldn't contain leading whitespace.
no_mixed_echo_print
Either language construct print
or echo
should be used.
no_null_property_initialization
Properties MUST not be explicitly initialized with null
except when they have a type declaration (PHP 7.4).
no_short_bool_cast
Short cast bool
using double exclamation mark should not be used.
no_space_around_double_colon
There must be no space around double colons (also called Scope Resolution Operator or Paamayim Nekudotayim).
no_spaces_after_function_name
When making a method or function call, there MUST NOT be a space between the method or function name and the opening parenthesis.
no_spaces_inside_parenthesis
There MUST NOT be a space after the opening parenthesis. There MUST NOT be a space before the closing parenthesis.
no_superfluous_phpdoc_tags
Removes @param
, @return
and @var
tags that don't provide any useful information.
no_trailing_comma_in_singleline_function_call
When making a method or function call on a single line there MUST NOT be a trailing comma after the last argument.
no_unneeded_curly_braces
Removes unneeded curly braces that are superfluous and aren't part of a control structure's body.
no_useless_return
There should not be an empty return
statement at the end of a function.
no_useless_sprintf
There must be no sprintf
calls with only the first argument.
not_operator_with_space
Logical NOT operators (!
) should have leading and trailing whitespaces.
not_operator_with_successor_space
Logical NOT operators (!
) should have one trailing whitespace.
nullable_type_declaration_for_default_null_value
Adds or removes ?
before type declarations for parameters with a default null
value.
object_operator_without_whitespace
There should not be space before or after object operators ->
and ?->
.
operator_linebreak
Operators - when multiline - must always be at the beginning or at the end of the line.
ordered_class_elements
Orders the elements of classes/interfaces/traits/enums.
ordered_interfaces
Orders the interfaces in an implements
or interface extends
clause.
php_unit_construct
PHPUnit assertion method calls like ->assertSame(true, $foo)
should be written with dedicated method like ->assertTrue($foo)
.
php_unit_fqcn_annotation
PHPUnit annotations should be a FQCNs including a root namespace.
php_unit_method_casing
Enforce camel (or snake) case for PHPUnit test methods, following configuration.
php_unit_mock_short_will_return
Usage of PHPUnit's mock e.g. ->will($this->returnValue(..))
must be replaced by its shorter equivalent such as ->willReturn(...)
.
php_unit_set_up_tear_down_visibility
Changes the visibility of the setUp()
and tearDown()
functions of PHPUnit to protected
, to match the PHPUnit TestCase.
php_unit_size_class
All PHPUnit test cases should have @small
, @medium
or @large
annotation to enable run time limits.
php_unit_strict
PHPUnit methods like assertSame
should be used instead of assertEquals
.
php_unit_test_annotation
Adds or removes @test annotations from tests, following configuration.
php_unit_test_case_static_method_calls
Calls to PHPUnit\Framework\TestCase
static methods must all be of the same type, either $this->
, self::
or static::
.
php_unit_test_class_requires_covers
Adds a default @coversNothing
annotation to PHPUnit test classes that have no @covers*
annotation.
phpdoc_align
All items of the given phpdoc tags must be either left-aligned or (by default) aligned vertically.
phpdoc_annotation_without_dot
PHPDoc annotation descriptions should not be a sentence.
phpdoc_indent
Docblocks should have the same indentation as the documented subject.
phpdoc_line_span
Changes doc blocks from single to multi line, or reversed. Works for class constants, properties and methods only.
phpdoc_no_access
@access
annotations should be omitted from PHPDoc.
phpdoc_no_empty_return
@return void
and @return null
annotations should be omitted from PHPDoc.
phpdoc_no_package
@package
and @subpackage
annotations should be omitted from PHPDoc.
phpdoc_no_useless_inheritdoc
Classy that does not inherit must not have @inheritdoc
tags.
phpdoc_order
Annotations in PHPDoc should be ordered so that @param
annotations come first, then @throws
annotations, then @return
annotations.
phpdoc_return_self_reference
The type of @return
annotations of methods returning a reference to itself must the configured one.
phpdoc_scalar
Scalar types should always be written in the same form. int
not integer
, bool
not boolean
, float
not real
or double
.
phpdoc_separation
Annotations in PHPDoc should be grouped together so that annotations of the same type immediately follow each other, and annotations of a different type are separated by a single blank line.
phpdoc_summary
PHPDoc summary should end in either a full stop, exclamation mark, or question mark.
phpdoc_tag_casing
Fixes casing of PHPDoc tags.
phpdoc_tag_type
Forces PHPDoc tags to be either regular annotations or inline.
phpdoc_to_comment
Docblocks should only be used on structural elements.
phpdoc_to_param_type
EXPERIMENTAL: Takes @param
annotations of non-mixed types and adjusts accordingly the function signature. Requires PHP >= 7.0.
phpdoc_to_property_type
EXPERIMENTAL: Takes @var
annotation of non-mixed types and adjusts accordingly the property signature. Requires PHP >= 7.4.
phpdoc_to_return_type
EXPERIMENTAL: Takes @return
annotation of non-mixed types and adjusts accordingly the function signature. Requires PHP >= 7.0.
phpdoc_trim
PHPDoc should start and end with content, excluding the very first and last line of the docblocks.
phpdoc_types
The correct case must be used for standard PHP types in PHPDoc.
phpdoc_var_annotation_correct_order
@var
and @type
annotations must have type and name in the correct order.
phpdoc_var_without_name
@var
and @type
annotations of classy properties should not contain the name.
protected_to_private
Converts protected
variables and methods to private
where possible.
psr_autoloading
Classes must be in a path that matches their namespace, be at least one namespace deep and the class name should match the file name.
regular_callable_call
Callables must be called without using call_user_func*
when possible.
return_assignment
Local, dynamic and directly referenced variables should not be assigned and directly returned by a function or method.
return_type_declaration
There should be one or no space before colon, and one space after it in return type declarations, according to configuration.
self_accessor
Inside class or interface element self
should be preferred to the class name itself.
self_static_accessor
Inside a final
class or anonymous class self
should be preferred to static
.
short_scalar_cast
Cast (boolean)
and (integer)
should be written as (bool)
and (int)
, (double)
and (real)
as (float)
, (binary)
as (string)
.
simple_to_complex_string_variable
Converts explicit variables in double-quoted strings and heredoc syntax from simple to complex format (${
to {$
).
simplified_if_return
Simplify if
control structures that return the boolean result of their condition.
simplified_null_return
A return statement wishing to return void
should not return null
.
single_blank_line_at_eof
A PHP file without end tag must always end with a single empty line feed.
single_blank_line_before_namespace
There should be exactly one blank line before a namespace declaration.
single_line_after_imports
Each namespace use MUST go on its own line and there MUST be one blank line after the use statements block.
single_line_comment_style
Single-line comments and multi-line comments with only one line of actual content should use the //
syntax.
single_quote
Convert double quotes to single quotes for simple strings.
standardize_increment
Increment and decrement operators should be used if possible.
static_lambda
Lambdas not (indirect) referencing $this
must be declared static
.
switch_continue_to_break
Switch case must not be ended with continue
but with break
.
trim_array_spaces
Arrays should be formatted like function/method arguments, without leading or trailing single line space.
types_spaces
A single space or none should be around union type operator.
unary_operator_spaces
Unary operators should be placed adjacent to their operands.
use_arrow_functions
Anonymous functions with one-liner return statement must use arrow functions.
visibility_required
Visibility MUST be declared on all properties and methods; abstract
and final
MUST be declared before the visibility; static
MUST be declared after the visibility.
void_return
Add void
return type to functions with missing or empty return statements, but priority is given to @return
annotations. Requires PHP >= 7.1.
whitespace_after_comma_in_array
In array declaration, there MUST be a whitespace after each comma.
yoda_style
Write conditions in Yoda style (true
), non-Yoda style (['equal' => false, 'identical' => false, 'less_and_greater' => false]
) or ignore those conditions (null
) based on configuration.
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK