-
-
Save petericebear/72e2b462f59b305c551c to your computer and use it in GitHub Desktop.
| <?php | |
| $finder = Symfony\Component\Finder\Finder::create() | |
| ->notPath('bootstrap/cache') | |
| ->notPath('storage') | |
| ->notPath('vendor') | |
| ->in(__DIR__) | |
| ->name('*.php') | |
| ->notName('*.blade.php') | |
| ->ignoreDotFiles(true) | |
| ->ignoreVCS(true); | |
| $fixers = [ | |
| '-psr0', | |
| //'align_double_arrow', | |
| 'binary_operator_spaces', | |
| 'blank_line_after_namespace', | |
| 'blank_line_after_opening_tag', | |
| 'blank_line_before_return', | |
| 'braces', | |
| 'cast_spaces', | |
| 'class_definition', | |
| 'concat_without_spaces', | |
| 'elseif', | |
| 'encoding', | |
| 'full_opening_tag', | |
| 'function_declaration', | |
| 'function_typehint_space', | |
| 'hash_to_slash_comment', | |
| 'heredoc_to_nowdoc', | |
| 'include', | |
| 'lowercase_cast', | |
| 'lowercase_constants', | |
| 'lowercase_keywords', | |
| 'method_argument_space', | |
| 'method_separation', | |
| 'native_function_casing', | |
| 'new_with_braces', | |
| 'no_alias_functions', | |
| 'no_blank_lines_after_class_opening', | |
| 'no_blank_lines_after_phpdoc', | |
| 'no_blank_lines_between_uses', | |
| 'no_closing_tag', | |
| 'no_duplicate_semicolons', | |
| 'no_empty_phpdoc', | |
| 'no_extra_consecutive_blank_lines', | |
| 'no_leading_import_slash', | |
| 'no_leading_namespace_whitespace', | |
| 'no_multiline_whitespace_around_double_arrow', | |
| 'no_multiline_whitespace_before_semicolons', | |
| 'no_short_bool_cast', | |
| 'no_singleline_whitespace_before_semicolons', | |
| 'no_spaces_after_function_name', | |
| 'no_spaces_inside_parenthesis', | |
| 'no_tab_indentation', | |
| 'no_trailing_comma_in_list_call', | |
| 'no_trailing_comma_in_singleline_array', | |
| 'no_trailing_whitespace', | |
| 'no_trailing_whitespace_in_comment', | |
| 'no_unneeded_control_parentheses', | |
| 'no_unreachable_default_argument_value', | |
| 'no_unused_imports', | |
| 'no_useless_return', | |
| 'no_whitespace_before_comma_in_array', | |
| 'no_whitespace_in_blank_lines', | |
| 'not_operator_with_successor_space', | |
| 'object_operator_without_whitespace', | |
| 'ordered_imports', | |
| 'phpdoc_align', | |
| 'phpdoc_indent', | |
| 'phpdoc_inline_tag', | |
| 'phpdoc_no_access', | |
| 'phpdoc_no_package', | |
| 'phpdoc_order', | |
| 'phpdoc_params', | |
| 'phpdoc_scalar', | |
| 'phpdoc_separation', | |
| 'phpdoc_short_description', | |
| 'phpdoc_summary', | |
| 'phpdoc_to_comment', | |
| 'phpdoc_trim', | |
| 'phpdoc_type_to_var', | |
| 'phpdoc_types', | |
| 'phpdoc_var_without_name', | |
| 'print_to_echo', | |
| 'psr4', | |
| 'self_accessor', | |
| 'short_array_syntax', | |
| 'short_scalar_cast', | |
| 'simplified_null_return', | |
| 'single_blank_line_at_eof', | |
| 'single_blank_line_before_namespace', | |
| 'single_import_per_statement', | |
| 'single_line_after_imports', | |
| 'single_quote', | |
| 'space_after_semicolon', | |
| 'standardize_not_equals', | |
| 'switch_case_semicolon_to_colon', | |
| 'switch_case_space', | |
| 'ternary_operator_spaces', | |
| 'trailing_comma_in_multiline_array', | |
| 'trim_array_spaces', | |
| 'unalign_equals', | |
| 'unary_operator_spaces', | |
| 'unix_line_endings', | |
| 'visibility_required', | |
| 'whitespace_after_comma_in_array', | |
| ]; | |
| return Symfony\CS\Config\Config::create() | |
| ->level(Symfony\CS\FixerInterface::PSR2_LEVEL) | |
| ->fixers($fixers) | |
| ->finder($finder) | |
| ->setUsingCache(false); |
Thank you for your addition! Sorry, just saw the contribution.
Can anybody confirm to made it working with php-cs-fixer ver.2?
Yes , we changed it to this:
<?php
$finder = PhpCsFixer\Finder::create()
->notPath('bootstrap/cache')
->notPath('storage')
->notPath('vendor')
->in(__DIR__)
->name('*.php')
->notName('*.blade.php')
->ignoreDotFiles(true)
->ignoreVCS(true)
;
return PhpCsFixer\Config::create()
->setRules(array(
'@Symfony' => true,
'binary_operator_spaces' => ['align_double_arrow' => false],
'array_syntax' => ['syntax' => 'short'],
'linebreak_after_opening_tag' => true,
'not_operator_with_successor_space' => true,
'ordered_imports' => true,
'phpdoc_order' => true,
))
->setFinder($finder)
;
Guys, thanks for sharing your configs!
Proposed changes for @jeystaats's config:
- Change
'binary_operator_spaces' => ['align_double_arrow' => false]to'binary_operator_spaces' => ['operators' => ['=>' => null]](asalign_double_arrowoption is deprecated now). - [subjectively] Add
'phpdoc_no_empty_return' => falseto comply with the Laravel base code (@return voidis used everywhere).
Any ideas on how to add a rule to align phpdoc tags according to Laravel Coding Style (two spaces in @param tag)?
I also find these useful for myself:
'@Symfony:risky' => true,
'php_unit_construct' => false
Am I not mistaken, but doesn't the framework use 'ordered_imports' => ['sortAlgorithm' => 'length'],? Just curious here.
laravel no longer sort the imports by length, but instead uses alphabetical order.
Oh men i really have to update this gist haha.
Will update it this week
It would be great, please do it this way.
https://gist.githubusercontent.com/ShahinSorkh/f8d9284950f2f073aaa2c2ff11300321/raw/.php_cs
Just in case anyone else gets stuck with
Class 'Symfony\CS\Config\Config' not found... errors like me - make sure that you haven't got version 2 of PHP-CS-Fixer installed.Here's what I used to install v1:
$ composer global require friendsofphp/php-cs-fixer:1.*