PSR-2,Line Wrapping for long argument listsl和Netbeans

时间:2017-06-06 08:31:36

标签: php netbeans

根据长参数列表中的PSR-2 Standard

  

参数列表可以分成多行,其中每个后续的>行缩进一次。这样做时,列表中的第一项必须是>在下一行,并且每行必须只有一个参数。

这看起来像这样:

<?php
$foo->bar(
    $longArgument,
    $longerArgument,
    $muchLongerArgument
);

然而,在netbeans中,虽然我将PSR-2安装到格式化程序中,但当我允许它自动格式化时,我得到:

$foo->bar($longArgument, $longerArgument, $muchLongerArgument);

我可以将其更改为:

$foo->bar(
     $longArgument
     , $longerArgument
     , $muchLongerArgument
    );

但这违反了标准。我也可以通过方法调用将其设置为始终换行符,但后来我得到了:

    $foo->bar($longArgument,
     $longerArgument,
     $muchLongerArgument);

哪个也不符合标准。它还会自动更改所有方法调用,而我只想更改我认为太长的方法调用,并且我希望它们如上所述中断。

有没有办法强制netbeans在行变得太长时自动以所描述的方式中断(“Wrapping”设置为“Too long”不会这样做),如果没有,有没有办法我可以阻止它自动将我重新格式化的信息重新放回到一行而不需要使用不同的编辑器,或者关闭autoformat?

1 个答案:

答案 0 :(得分:0)

Netbeans没有针对PHP PSR标准的良好代码格式化工具,并且很难强制它去做。更好的选择是使用外部工具。

看起来不错: NetBeans PHP CS Fixer Plugin

您应该配置设置并完成。