【发布时间】:2011-10-08 17:31:19
【问题描述】:
NetBeans 7.0 上的快速操作和 PHP 的自动完成功能;
我正在试图弄清楚(如果可能)如何强制在一个类中实现的__get() 返回(参考)某个类型,该类型始终与实现__get() 的类相同。
现在,我有(View):
/**
* @param string $key
* @return View
*/
public function __get($key){
return $this->getView($key);
}
这样访问:
$view->foo-> // should populate with methods from View
^
现在我一直在阅读有关 @property 的信息,但我不确定这是否适合我正在做的事情。另一件事是(如果可能的话,这将是一个很好的功能)通常视图是嵌套的,所以在我的实现中看到这种情况并不少见:
$view->foo->bar->baz-> // should populate with methods from View
^
关于如何强制执行此操作的任何想法,还是我被卡住了?
更新:
所以@property 似乎正朝着正确的方向前进,但是似乎不支持对属性名称进行通配符。因此,为了详细说明我的问题,是否有人知道任何 NetBeans 插件或未记录(或只是很难找到)支持通配符 @property 名称的 PHPDoc 语法?
我正在考虑以下方向之一:
/**
* @property View *
* @property View ...
* @property View $var,...
*/
当然,这些变体都不起作用,但最后一个似乎最合乎逻辑,因为它们似乎支持可变参数函数参数列表的类似语法。
【问题讨论】:
-
我还没有看到任何 IDE 可以正常使用魔术方法。
-
您可能可以为您编写某种附加组件,也许可以将类型
View分配给View的所有无法识别的属性。 -
那真是太不幸了。特别是因为我不精通 Java,也不知道从哪里开始插件开发(虽然那会很好)
标签: php class netbeans methods autocomplete