首页 > 解决方案 > 不要在 PhpStorm 中封装 else ifs

问题描述

我正在尝试在 PhpStorm 中使用一些预定义的代码样式,以便使用 自动格式化Ctrl+Alt+L,例如 Zend 或 CodeIgniter。

但是,它们都转换为简单的

if ($a) {
  //
} else if ($b) {
 //
} else if ($c) {
  //
}

进入

if ($a) {
  //
} else {
  if ($b) {
    //
  } else {
    if ($c) {
      //
    }
  }
}

我怎样才能摆脱这个?我尝试设置类似Group use => do not wrapand的选项Special else if treatment => false,但这些似乎不起作用。

代码样式 XML:https ://pastebin.com/Lu5NMys3

标签: intellij-ideaphpstorm

解决方案


  1. Settings/Preferences
  2. Editor | Code Style | PHP
  3. Wrapping and Braces标签
  4. 'if()' statement --> Special 'else if' treatment-- 确保选中此选项。

    在此处输入图像描述

  5. Code Conversion标签

  6. Convert else if / esleif to:- 禁用或选择所需的样式。

    在此处输入图像描述


推荐阅读