また、クラスを利用する場合、その型がわからないとNetBeansも気づかない。
クラスを継承した場合に、親のクラスの変数の型がわからないため、コード補完がきかない
例えばクラス内にテンプレートエンジンのsmartyを作って使おうとした場合に発生する。
以下のようなコードを書きたいとする
$this->smarty->assign('value','valueの中身');
その変数自体を定義したクラスならば問題はないようだ。
親クラスの宣言時にコメントを書く
コメントで/** @var Smarty すまーてー */
require_once './Smarty/Smarty.class.php';
class MyClass {
/** @var Smarty すまーてー */
protected $smarty;
function __construct() {
$this->smarty = new Smarty();
}
function test() {
$this->smarty->assign("a",1);
}
}
すると子供のクラスでコード補完可能になる


