排除php-cs-fixer Netbeans 8.x中的数组对齐

时间:2018-08-02 11:52:28

标签: netbeans netbeans-8 php-cs-fixer

我将php-cs-fixerNetbeans 8.2一起使用。除了一种情况,它运行正常。我的数组格式如下所示:

$array = [
    'asdf' => 'a',
    'a'    => 'b',
    'asd'  => 'c'
];

但是在用php-cs-fixer修复后,它们都变成了

$array = [
    'asdf' => 'a',
    'a' => 'b',
    'asd' => 'c'
];

有什么办法只能忽略此部分?

2 个答案:

答案 0 :(得分:1)

  

有什么办法可以只忽略本节吗?

没有,没有办法。请参阅对PHP-CS-Fixer问题#3846: How to ignore specific lines?的回复

  

这是一项设计决策,您不得允许   代码段。取决于将来是否会引入   有人请求它的数量,并且有人会挑战   实施它。

     

当前,如果您确实有需要,可以禁用文件   固定的。但这意味着它不会被其他任何东西固定   规则。

因此,我想您可以更新该现有问题来增加您的声音,并希望他们听。

或者,您可以提出一个新问题,要求PHP-CS-Fixer中有一个新规则,该规则在格式化数组时保留空白。在我看来,您的格式肯定比PHP-CS-Fixer更好。

答案 1 :(得分:0)

为了在关联数组中保持双箭头 ('=>') 后的对齐(旧规则 align_double_arrow),使用 PHP-CS-Fixer 的 v2 或 v3 版本,您需要运行:

php-cs-fixer fix path \
--rules='{"binary_operator_spaces": {"operators": {"=>": "align_single_space_minimal"}}}'

您也可以对任何二元运算符执行此操作:

php-cs-fixer fix path \
--rules='{"binary_operator_spaces": {"default": "align_single_space_minimal"}}'

更多阅读: https://github.com/FriendsOfPHP/PHP-CS-Fixer/blob/3.0/doc/rules/operator/binary_operator_spaces.rst