也许这将是一个非常蹩脚的问题,但我只是尝试。 我构建了自己的MVC框架。
在控制器中,我正在创建一个名为$ Object的新对象。 Object类有一个私有属性$ id和一个getter getId();
在控制器中,我正在创建一个新的View(),即加载模板文件的内容。 所以我的控制器看起来像这样:
$View = new View('templateFile.php');
$View->Object = new Object();
$View->show();
如果我在控制器中对此进行编辑,则在键入$ View->对象 - > ge ... netbeans时会自动尝试将其自动填充到getId,或者提供以" ge"开头的所有方法。 。 凉。
我正在编辑模板文件,其中$ this是View对象。 当我输入时,$ this->和CTLR + Space,没有任何建议。
有可能以某种方式获得这个吗?
这可能是一个梦想,如果我可以用$ this->对象 - >这样做和CTRL +空间。
以下是我的View类的重要部分:
public function show() {
echo $this->getViewContent();
}
public function getViewContent() {
$container = null;
$defaultViewHeader = '';
if ($this->showDefaultViewHeader) {
if (file_exists($this->viewsDir . $this->defaultViewHeaderFile)) {
$defaultViewHeader = $this->getContent($this->viewsDir . $this->defaultViewHeaderFile);
} else {
$defaultViewHeader = $this->getContent($this->commonDir . $this->defaultViewHeaderFile);
}
}
$pageContent = $this->getContent($this->file);
if ($this->showDefaultViewHeader) {
$pageContent = $defaultViewHeader . $pageContent;
}
if ($this->showContainer) {
$container = $this->getContent($this->viewsDir . $this->containerFile);
$pageContent = str_replace('[' . HTD_PAGECONTENT . ']', $pageContent, $container);
}
return $pageContent;
}
public function getContent($file) {
ob_start();
include ($file);
$content = ob_get_contents();
ob_end_clean();
return $content;
}
答案 0 :(得分:0)
您可以使用“var”注释为netbeans指定变量类型。 尝试将此行添加到模板中:
/* @var $this View */
此处有更多相关内容https://blogs.oracle.com/netbeansphp/entry/defining_a_variable_type_in