doushen2154 2013-09-25 01:56
浏览 347
已采纳

如何在phpstorm中为代码完成注释类

Suppose I have a class

class Class1
{
    public function method1(){
        return "hello world";
    }

}

and I have another class that uses this in a class

class Class2
{
     /** @var $firstClass Class1 */
     private $firstClass;

     public function __construct($firstClass)
     {
            $this->firstClass = $firstClass;

     }

     public function method2()
     {
            return $this->firstClass-> "I want code completion to work here"
     }
 }

How do I get the code completion to work using PHPDoc. I've searched phpdoc for scope, declaration, all kinds of stuff. I can't figure out the terms or placement of the comment line for phpdoc to pick this up.

I'm using phpstorm. Help!

  • 写回答

1条回答 默认 最新

  • dtdr57046 2013-09-25 06:46
    关注

    Check your class namespaces.

    If class have namespace be sure you properly define them in comments or by alias.
    Comments example:

    ...
        /** @var \vendor
    amespace\Class1 */
        private $firstClass;
    ...
    

    Alias example:

    use \vendor
    amespace\Class1;
    ...
        /** @var Class1 */
        private $firstClass;
    ...
    


    Check project directories definition.

    If your class directories not defined in project settings, PHPStorm can't index those classes. In this case code completion will not work. How to set up project directories in PHPStorm.


    Clear PHPStorm cache.

    Sometimes PHPStorm cache became invalid. Because of this, codecompletion may not work properly. Official how to cache cleanup.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 iOS绕地区网络检测
  • ¥15 python验证码滑块图像识别
  • ¥15 根据背景及设计要求撰写设计报告
  • ¥15 QT6颜色选择对话框显示不完整
  • ¥20 能提供一下思路或者代码吗
  • ¥15 用twincat控制!
  • ¥15 请问一下这个运行结果是怎么来的
  • ¥15 单通道放大电路的工作原理
  • ¥30 YOLO检测微调结果p为1
  • ¥15 DS18B20内部ADC模数转换器