【问题标题】:PhpStorm Code Refactoring elseif PHPPhpStorm 代码重构 elseif PHP
【发布时间】:2016-11-03 06:31:33
【问题描述】:

让我们以 PHP.net 中的这个例子为例

    <?php
    if ($a > $b) 
    {
         echo "a is größer als b";
    } 
    else if ($a == $b) 
    {
         echo "a ist gleich groß wie b";
    } 
    else 
    {
         echo "a ist kleiner als b";
    }
    ?>

相当基本的东西。 STRG 或 CTRL + ALT + l 重新格式化代码,但以一种相当奇怪的方式:

    if ( $a > $b )
    {
        echo "a is größer als b";
    }
    else
    {
        if ( $a == $b )
        {
            echo "a ist gleich groß wie b";
        }
        else
        {
            echo "a ist kleiner als b";
        }
    }

没有任何模板或任何我知道的东西可以触发这个。然而,以这种方式更改代码是一件令人讨厌的事情。

问题是:如何防止 PhpStorm 这样做。它仅出现在软件的最新更新 (PhpStorm 2016.2.2) 中,而不出现在早期版本中。

PhpStorm 的版本是

  • PhpStorm 2016.2.2
  • 构建 #PS-162.2380.11,构建于 2016 年 10 月 24 日
  • JRE:1.8.0_112-release-287-b3 amd64
  • JVM:JetBrains s.r.o 的 OpenJDK 64 位服务器虚拟机

【问题讨论】:

  • 你想要什么样的格式?
  • else if 构造没有以这种方式被分解。问题是elseif 在代码重构后保持不变,而else if 则不然。这是随着最新更新而改变的东西
  • 我对这是默认行为感到困惑,我需要对其进行“特殊处理”才能让我的代码不受影响。很傻。

标签: php refactoring phpstorm


【解决方案1】:

转到 File > Settings > Editor > Code Style > PHP > Wrapping and Braces 选项卡并选中“Special 'else if'treatment”

【讨论】:

  • 这似乎是新的。我一定忽略了它。可悲的是,它并没有扭转它最初造成的混乱局面。由于这仅在我的代码中出现过,因此并没有造成太大的伤害。谢谢。
猜你喜欢
  • 2011-09-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-03-14
  • 2019-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多