使用symfony容器服务时,代码完成无效

deb*_*ian 3 code-completion autosuggest symfony phpstorm fosuserbundle

我在我的Symfony 2应用程序中使用FOSUserBundle,并想知道如何在PHPStorm中进行代码完成工作,因为当您通过容器注入服务时:

$userManager = $this->container->get('fos_user.user_manager');
Run Code Online (Sandbox Code Playgroud)

并尝试使用$ userManager来查看其界面 - 我什么也看不见,因为对于PHPStorm,这是一个常规变量,而不是通过"new"运算符构建的对象.

有没有办法让它向我展示这个对象的可用方法?

就像我们通常使用真实对象一样: 在此输入图像描述

谢谢!

gp_*_*ver 6

你必须为变量分配一个如下所示的注释,告诉phpstorm变量接收实例的类(ps:我不使用fosUserBundle).

/** @var \myProject\appBundle\entityManager $userManager */
$userManager = $this->container->get('fos_user.user_manager');
Run Code Online (Sandbox Code Playgroud)

PS:你安装了Symfony2插件吗?