如何使用Zend Studio for Eclipse的代码助手(Code Assistant)

今天正式开始使用Zend Studio for Eclipse里面使用PHP的coding,一上手就遇上了问题。
考虑如下的代码:

   1: class TService {
   2:     public function DoSomething() {
   3:         echo "I've nothing to do ...";
   4:     }
   5: } 
   6:  
   7: class TMyClass {
   8:     private $FService;
   9:     function __construct() {
  10:         $this->FService = new TService();
  11:         $this->DoSomething(); //这里键入[$this->]后,代码助手马上就正确的显示出来了。
  12:     }
  13:     function __destruct() {
  14:         $this->FService
  15:         //当你再想调用DoSomething(),而又想懒惰下少打几个字的时候,代码助手不睬你了~
  16:     }
  17: }

 
可想而知,如果开发的时候都是像上面这样的情况肯定会累死人的…
起初的时候,我就想起了PHP这个不支持声明类型的坏特性,起码对于从Delphi转过来的我来说,这个让我有点讨厌PHP(我是逼迫的)
想想也是的,看TMylass的构造函数,这里明显有了new,等于告诉了ide在构造函数这个范围里面的FService是TService类型的,所以才会有代码助手出现,而在拆构函数中情况就不一样,因为ide不能辨认FService是什么类型的。
后来开始google,发现这个:http://codeutopia.net/blog/2007/12/30/how-to-get-code-assist-for-your-classes-in-zend-studio-andor-aptana/,才受到了启发,PHP不支持类型声明,那就借助一下PHPDoc,让它告诉ide到底变量是什么类型的。
后来我自己改了代码:

   1: class TService { /*略*/ } 
   2:  
   3: class TMyClass {
   4:     /*
   5:      * @var TService
   6:      */
   7:     private $FService;
   8:     function __construct() { /*略*/ }
   9:     function __destruct() {
  10:         $this->FService
  11:         //可是代码提示还是不出来!?
  12:     }
  13: } 

奇怪了,明明有了@var了,怎么还是没有效果?仔细看看,这个@var没有语法着色。

后来发现这个:

 

于是,FService就有了PHPDoc,是这样的:


现在@var有了颜色,原来是注释第一行有两个星号[/**],不是前面的一个星号[/*],把unkown_type改成TService,好了,完美~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值