如何在VS代码中将PHP代码大括号自动格式化为新行
我目前正在使用VS代码的最新版本1.41.1(在撰写本文时) 我已经安装了PHPCSfixer来自动格式化我的代码。但是有一种行为我不喜欢。它总是将代码格式化如下:如何在VS代码中将PHP代码大括号自动格式化为新行,php,visual-studio-code,php-cs-fixer,Php,Visual Studio Code,Php Cs Fixer,我目前正在使用VS代码的最新版本1.41.1(在撰写本文时) 我已经安装了PHPCSfixer来自动格式化我的代码。但是有一种行为我不喜欢。它总是将代码格式化如下: if (condition) { // code... } else { // code } 但这并没有给我很好的可读性 我希望做到这一点: if (condition) { // code... } else { // code } 在VS代码中是否有支持此PHP代码格式的扩展?或者PHP CS
if (condition) {
// code...
} else {
// code
}
但这并没有给我很好的可读性
我希望做到这一点:
if (condition)
{
// code...
}
else
{
// code
}
在VS代码中是否有支持此PHP代码格式的扩展?或者PHP CS Fixer中是否有任何选项可以跳过这些花括号的格式设置?还有其他的OTPION吗?根据@Nicolas的评论,我可以分两步完成
.php\u cs
<?php
return PhpCsFixer\Config::create()
->setRules(array(
'braces' => array(
'position_after_anonymous_constructs' => 'next',
'position_after_control_structures' => 'next',
)
));
也在寻找同样的东西。我尝试了激进组织给出的(被接受的)答案,但那对我不起作用。在此处找到另一个代码段:
片段:
<?php
$finder = PhpCsFixer\Finder::create()
//->exclude('somedir')
//->notPath('src/Symfony/Component/Translation/Tests/fixtures/resources.php'
->in(__DIR__)
;
return PhpCsFixer\Config::create()
->setRules([
'@PSR2' => true,
'strict_param' => false,
'array_syntax' => ['syntax' => 'long'],
'braces' => [
'allow_single_line_closure' => true,
'position_after_functions_and_oop_constructs' => 'same'],
])
->setFinder($finder)
;
假设这是一个极具争议的问题。有一个选项可以将带有规则的配置文件传递给扩展名。也许有一种方法可以满足您的需要。此外,在Visual Studio代码中,您不需要使用php cs来格式化代码-只需标记要格式化的代码,CTRL+K+CTRL+F。但请像其他人一样使用PSR2;)很高兴我能帮忙!