【问题标题】:PHPStorm File template variablesPHPStorm 文件模板变量
【发布时间】:2014-04-24 09:17:05
【问题描述】:

我想创建自己的文件模板。但是变量有问题,因为我被提示输入命名空间等变量。快速示例:

<?php
namespace ${NAMESPACE};

class ${NAME} 
{

}

这会提示我输入命名空间和名称,而我应该只提供一个文件名。如何让 PHPStorm 自动检测其dedicated variables

我在最新的 OSX 上使用 7.1.3 版本。

【问题讨论】:

    标签: phpstorm


    【解决方案1】:

    如何让 PHPStorm 自动检测其专用变量?

    你不能。

    ${NAMESPACE} 仅在 捆绑模板 中预定义/预填充,PHP 插件为其提供了特殊支持。在所有其他情况下,它被视为普通变量。

    http://youtrack.jetbrains.com/issue/WI-21711


    更新:2020-01-28

    上述问题现已解决。

    您现在可以在使用“新建 PHP 类/特征/接口”对话框时选择自定义模板。 ${NAMESPACE} 变量现在从该对话框字段中获取(它会根据您的 Source Roots 设置自动检测,如果需要,您可以手动编辑它)并传递到实际模板中。

    【讨论】:

    • 这很可悲。使创建自己的模板变得毫无用处。感谢您的快速回答。
    • 嗯...您可以编辑捆绑的模板。通过安装 File Template Variables 插件,您可以在每个项目级别上对其进行完全自定义。不理想,我不知道您的模板应该有多大不同..但是需要研究一下。 (P.S. 模板支持if-else 逻辑...)
    • @LazyOne 我知道现有的 $NAMESPACE 变量是如何工作的,你不必告诉我。我可以看到自己:) 我想知道是否可以自动添加命名空间而不是手动输入。看起来,这个非常需要的功能没有实现,所以很多用户没有利用自定义文件模板。这张票已经开放了 2 年多了,而且什么也没做。我们可以做什么?您是否已经在那里发表了您的投票/评论?如果没有 - 就去做吧。现在。谢谢。
    • 您现在可以在创建新的 PHP 类时选择一个模板来解决问题。
    • @ArielBogdziewicz 这仅在出现“新类”对话框窗口时有效;因为正是那个窗口提供了这些额外的变量(对于那个特定的情况)。对于您的情况(多文件模板),它不会起作用,因为不涉及该对话框窗口。 P.S. 如果您使用该新类并在那里选择您的模板,它会创建多个文件吗?我认为它适用于主文件,而不适用于子文件;如果您还没有完成,仍然值得检查。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-18
    • 2019-08-10
    • 2022-11-03
    相关资源
    最近更新 更多