Lỗi there is no document formatter for php file năm 2024

After installing as an extension with Visual Studio Code, this extension automatically formats your PHP code, in accordance with PSR-0, PSR-1, PSR-2 or Symfony style conventions.

Lỗi there is no document formatter for php file năm 2024

Features

  • Format current selection only, or the whole file.
  • Trigger formatting with custom keybindings or actions.
  • Supports formatting on save.
  • Supports adjustable level (i.e. PSR2) and fixers.
  • Can be configured to support other file extensions than PHP as well, i.e. ".inc" files.
  • Supports different PHP-CS-Fixer installation methods, i.e. Composer vs manual installation.

Setup

Refer to our wiki for a quick and easy guide on how to install the extension and its dependencies.

Configuration

Want custom keybindings? Need specific levels and fixers? Check out the wiki

Troubleshooting

Set up the extension, but can't get it to work? Check the Troubleshooting section.

Contribute

Want to add a feature or fix an error? Follow the Contribute section on the wiki to get started.

No but really, like me — you might be struggling to get PHP formatting working in a way you’re satisfied with; one extension formats HTML but doesn’t format whole documents, and with others I don’t get any formatting at all.

Probably user error — true. But if you’re still struggling with getting PHP formatting working in VS Code here’s what I finally figured out.

Install Extension

Inside VS Code, open up the extension side-panel and search for php-cs-fixer.

You’ll see a few with the same name so make sure you install the extension by the Junstyle.

Install The PHP Fixer File

In any folder use CURL to download the php fixer file to your working directory:

$ curl -L https://cs.symfony.com/download/php-cs-fixer-v2.phar -o php-cs-fixer

If for some reason CURL isn’t getting the file for you, go to the file’s Github Repo and download it however you want.

Make sure the file has the executable flag by running:

$ sudo chmod a+x php-cs-fixer

Make sure you can run it by running:

$ ./php-cs-fixer

You should get the program name and version number.

Move the file to a system directory that’s in the PATH:

$ sudo mv php-cs-fixer /usr/local/bin/php-cs-fixer

Create a Config File

In your terminal — create and edit a config file in your user directory:

$ sublime ~/.php_cs

Use your favorite text editor.

Paste this config code in the editor and save:

->setRules(array( '@PSR2' => true, 'array_indentation' => true, 'array_syntax' => array('syntax' => 'short'), 'combine_consecutive_unsets' => true, 'method_separation' => true, 'no_multiline_whitespace_before_semicolons' => true, 'single_quote' => true, 'binary_operator_spaces' => array( 'align_double_arrow' => false, 'align_equals' => false, ), // 'blank_line_after_opening_tag' => true, // 'blank_line_before_return' => true, 'braces' => array( 'allow_single_line_closure' => true, ), // 'cast_spaces' => true, // 'class_definition' => array('singleLine' => true), 'concat_space' => array('spacing' => 'one'), 'declare_equal_normalize' => true, 'function_typehint_space' => true, 'hash_to_slash_comment' => true, 'include' => true, 'lowercase_cast' => true, // 'native_function_casing' => true, // 'new_with_braces' => true, // 'no_blank_lines_after_class_opening' => true, // 'no_blank_lines_after_phpdoc' => true, // 'no_empty_comment' => true, // 'no_empty_phpdoc' => true, // 'no_empty_statement' => true, 'no_extra_consecutive_blank_lines' => array( 'curly_brace_block', 'extra', 'parenthesis_brace_block', 'square_brace_block', 'throw', 'use', ), // 'no_leading_import_slash' => true, // 'no_leading_namespace_whitespace' => true, // 'no_mixed_echo_print' => array('use' => 'echo'), 'no_multiline_whitespace_around_double_arrow' => true, // 'no_short_bool_cast' => true, // 'no_singleline_whitespace_before_semicolons' => true, 'no_spaces_around_offset' => true, // 'no_trailing_comma_in_list_call' => true, // 'no_trailing_comma_in_singleline_array' => true, // 'no_unneeded_control_parentheses' => true, // 'no_unused_imports' => true, 'no_whitespace_before_comma_in_array' => true, 'no_whitespace_in_blank_line' => true, // 'normalize_index_brace' => true, 'object_operator_without_whitespace' => true, // 'php_unit_fqcn_annotation' => true, // 'phpdoc_align' => true, // 'phpdoc_annotation_without_dot' => true, // 'phpdoc_indent' => true, // 'phpdoc_inline_tag' => true, // 'phpdoc_no_access' => true, // 'phpdoc_no_alias_tag' => true, // 'phpdoc_no_empty_return' => true, // 'phpdoc_no_package' => true, // 'phpdoc_no_useless_inheritdoc' => true, // 'phpdoc_return_self_reference' => true, // 'phpdoc_scalar' => true, // 'phpdoc_separation' => true, // 'phpdoc_single_line_var_spacing' => true, // 'phpdoc_summary' => true, // 'phpdoc_to_comment' => true, // 'phpdoc_trim' => true, // 'phpdoc_types' => true, // 'phpdoc_var_without_name' => true, // 'pre_increment' => true, // 'return_type_declaration' => true, // 'self_accessor' => true, // 'short_scalar_cast' => true, 'single_blank_line_before_namespace' => true, // 'single_class_element_per_statement' => true, // 'space_after_semicolon' => true, // 'standardize_not_equals' => true, 'ternary_operator_spaces' => true, // 'trailing_comma_in_multiline_array' => true, 'trim_array_spaces' => true, 'unary_operator_spaces' => true, 'whitespace_after_comma_in_array' => true, )) //->setIndent("\t") ->setLineEnding("\n") ;

Lỗi there is no document formatter for php file năm 2024

If you like your fat arrows aligned change this settings to true.

Save and Exit.

Point VS Code To Your Config File

Open VS Code Preferences > Settings.

Search for php-cs-fixer.

About 4 options down you’ll see a field for the config file path. Enter the absolute path like so:

Lỗi there is no document formatter for php file năm 2024

Set Extension as Default Formatter

Open any .php file in VS Code right click in the editor and click on Format Document.

If that formatted your code then great! If you have other formatters associated with PHP then click on Configurein the dialog in the bottom right and select php cs fixer from the dropdown.

Success?

If all went well you should see your PHP cleaned up a bit.

You’ll probably wanna tweak that config file. The array syntax is set to short which bugs me and you’ll probably be bugged by a few things too.