PHP:使用 Eclipse PDT 为字段键入提示

Posted

技术标签:

【中文标题】PHP:使用 Eclipse PDT 为字段键入提示【英文标题】:PHP: Type hints for fields with Eclipse PDT 【发布时间】:2011-02-08 07:01:32 【问题描述】:

使用 Eclipse + PDT,我知道您可以通过类型提示指定方法的返回类型或方法中变量的类型。

类字段呢?我可以声明字段的类型以启用该变量的自动完成功能吗?

我尝试了以下几行:

class MyClass 

  protected $Field; /* @var $Field MyType */

  ...

但它不起作用。

有没有办法用 Eclipse 和 PDT 实现类字段的自动补全?

谢谢,

西尔维奥

【问题讨论】:

【参考方案1】:

如果你需要一个未声明的局部变量,你可以使用

/* @var $varname vartype */

如果您使用 foreach 遍历对象数组,这将非常有用。

请注意,我们需要在一行中输入一个星号 /* 。声明应该放在变量的使用之前。

【讨论】:

我无法让它始终如一地工作。它有时确实有效 - 但其他时候却没有。我似乎找不到它的模式。 它对我来说非常适合我自己的类名。您是否同时打开了多个项目?这有时会混淆我的日食。 很棒的功能!不过,我真的很想知道他们为什么选择使用单个星号版本,名称和类型的顺序与 @paramother @var 不同,甚至还需要名称如果你把它放在变量之前......但是,好吧,也许这只是为了php 程序员混淆太多的一致性。 @ErickRobertson :如果您刚刚声明了一个从未使用过的类型的变量,并且只在注释中添加了一个类型提示,那么所需的 use 声明可能不存在,并且将 不会从评论中自动添加;没有它,PDT 就无法使提示起作用。 解决方法:在评论之外,输入 ClassName 并按 Ctrl-Space。 Eclipse 将添加“::”以表明它已将其识别为一个类,并且 添加了use 声明。现在擦除这条线。声明将保留。评论将起作用。 刚刚在 Eclipse Kepler 上测试过【参考方案2】:

是的,有! 只需简单地将 var 类型放在声明之前,如下所示:

/**
 * @var Type
 */
 protected $Field;

确保您使用 javadoc 样式的 cmets(/**,而不仅仅是 /*) 我通过选择“大纲”视图中的字段找到了这一点,然后右键单击 > 源 > 生成元素注释。

【讨论】:

这对我有用,但我没有看到“源 > 生成”部分。是否需要安装其他一些 Eclipse 插件才能看到?? @Matt Connolly:我安装了 PDT 并且我拥有它,没有特殊的附加插件。当您右键单击大纲视图的元素时,您会看到哪些条目? @jsalvata :我也使用 Indigo,它对我有用。我使用 PDT v3.0.0.v20110516-1100-77--84_23JBVgSVXO7XGJz0VLa9 正在处理 Neon.2 版本 (4.6.2)

以上是关于PHP:使用 Eclipse PDT 为字段键入提示的主要内容,如果未能解决你的问题,请参考以下文章

在 Eclipse PDT 中使用 xdebug 和 cakephp 进行调试

Eclipse PDT,如何设置“运行配置”?

Eclipse PDT 变量 $this 未定义

Eclipse PDT的自动完成配置

Eclipse PDT 将项目名称添加到虚拟主机路径

PHP最新发展