Reputation: 47619
I use something like this:
index.php(entryPoint)
<?php
include 'view.php';
$view= new View;
$view->a=5;
$view->render('index.tpl');
view.php
<?
clas View{
public function render($file){
include 'templates/'.$file;
}
}
templates/index.tpl
<?php /* @var $this View */?>
//some html
<?php $this->| ?> /*I want to see "a" incode completion here
How it is possible?
I know that something like this are allowed in ZendFramework plugin Maybe I can add it with my framework? some other html */
UPD:
I want to see properties which I used in index.php
in code completion in index.tpl
Properties should not be listed in view php
as properties
Upvotes: 0
Views: 671
Reputation: 9874
This won't work:
<?php /* @var $this Viewer */?>
And there are a few reasons for that. First, docblocks start with /**
not just /*
. Also you declare $this
to be an instance of Viewer
, but the actual class name is View
. That doesn't match, so you won't get any code completion (or at least not the expected code completion).
So you should use:
<?php /** @var $this View */?>
Also, if you want access to properties, you should declare them. That's the only way Netbeans will know about the properties.
I have not tested if specifying a class for $this
in a docblock will actually work.
Upvotes: 2