【问题标题】:PhpStorm .phtml formatting issuePhpStorm .phtml 格式问题
【发布时间】:2018-11-22 16:00:47
【问题描述】:

我遇到了 PhpStorm 自动格式化功能的问题。我无法正确格式化<?php if(...): ?><?php endif; ?>

例如此代码格式完美...

<td class="align-right">
    <?php if ($featureSet->grossPrices): ?>
        <?=$this->e(formatPrice($cartItem->totalGrossPrice / $cartItem->amount))?>
    <?php else: ?>
        <?=$this->e(formatPrice($cartItem->totalNetPrice / $cartItem->amount))?>
    <?php endif; ?>
</td>

...但是自动格式化程序会改变它,所以它看起来像这样:

<td class="align-right">
    <?php if ($featureSet->grossPrices): ?>
        <?= $this->e(formatPrice($cartItem->totalGrossPrice / $cartItem->amount)) ?><?php else: ?>
        <?= $this->e(formatPrice($cartItem->totalNetPrice / $cartItem->amount)) ?><?php endif; ?>
</td>

你有什么建议吗?我真的很喜欢 PhpStorm。从字面上看,这是我唯一遇到的唯一问题,但这真的让我感到害怕-.-

【问题讨论】:

  • 您检查过您的偏好吗?我在 Settings > Editor > Code Style > PHP 中手动设置了所有空格、括号、转换、引号等
  • 是的,我做到了。但我找不到像“关闭 php 标签后插入换行符”这样的选项
  • 我用“Set from... PSR1/PSR2”设置我的代码样式,我得到完全不同的结果(它只是在&lt;?=?&gt; 之前添加空格)所以我可以至少我可以确认设置存在。现在我们只需要找到它:)
  • @Benjamin 请张贴您的 PHP 代码样式设置的屏幕截图。理想情况下只使用Set from... 并使用PSR1/PSR2 选项(您可以创建新方案并在那里进行测试)
  • 好的,我找到了解决方案:在 HTML 代码样式设置中,Keep line breaks 选项被禁用并导致此行为。虽然我认为即使关闭了这个选项,它也不应该像这样对齐 PHP 标签..

标签: php phpstorm jetbrains-ide


【解决方案1】:

我找到了解决方案:
在 HTML 代码样式设置中,选项 Keep line breaks 被禁用并导致此行为。
虽然我认为即使关闭了这个选项,它也不应该像这样对齐 PHP 标记。

我向 PhpStorm 开发人员提交了一个问题:
https://youtrack.jetbrains.com/issue/WI-44274

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-04
    • 1970-01-01
    • 2015-03-02
    • 2021-03-25
    • 1970-01-01
    • 1970-01-01
    • 2014-08-06
    • 1970-01-01
    相关资源
    最近更新 更多