如何在 PhpStorm (JetBrains) 中使用条件块启用代码折叠?

How to enable code folding with conditional blocks in PhpStorm (JetBrains)?

我想知道是否有一种方法可以让 PhpStorm(或任何其他处理 .phtml 文件的 JetBrains 工具)在折叠代码单元时识别条件块。

我有这个例子:

<div class="parent">
    <?php if (condition) : ?>
        <div class="div1">
    <?php elseif (conditionTwo) : ?>
        <div class="div2">
    <?php endif; ?>

    <!-- Conditional block ends here -->
    </div>

<!-- Parent container ends here -->
</div>

PhpStorm(默认情况下)允许我折叠 div2(第一个 </div>),因此 div1 需要折叠最后一个 </div>,意味着与 parent.

一起折叠

我尝试调整设置,但没有成功。

Microsoft 的 Visual Studio 代码具有正确的行为:

如您所见,在 VSCode 中,您不能在 php if 块内的 <div> 上倒塌。

感谢您的宝贵时间。

真的,这里的问题是您如何编写代码。它会更干净(并删除没有最终 else 的边缘情况,如果你做了类似

<div class="<?= condition ? 'div1' : 'div2'; ?>">

无法使用给定的代码示例进行配置。您可以在 https://youtrack.jetbrains.com/newIssue 将此提交给 JetBrains 跟踪器,供开发人员查看并在下一个 IDE 版本中解决。