Phalcon DI phpStorm IDE不懂我的代码

时间:2015-08-06 09:42:56

标签: php dependency-injection phalcon

我在新项目中使用了phalcon,但我意识到phpStorm并不了解我自己的注射器,例如:

   /**
     * Registering the helper component
     */
    $di->set('helper', function () {
        $helper = new \Frontend\Helpers\Common();
        return $helper;
    });

来自我的控制器,我可以这样做:

   $this->helper->getHelp();

它工作正常,但IDE不会自动完成我的代码。我当然可以这样做:

   /** @var \Frontend\Helpers\Common $helper  */
   $helper->...

在这种情况下,我可以看到所有方法,但每当我需要使用帮助时,我必须发表这些评论。

我想知道是否有办法使用owns注射器并让IDE无法理解代码?

1 个答案:

答案 0 :(得分:4)

您可以使用此解决方法。

<强> services.php

/**
 * Registering the helper component
 */
$di->set('helper', function () {
    $helper = new \Frontend\Helpers\Common();
    return $helper;
});

<强>一个AbstractController

/**
 * My Abstract controller
 *
 * @property \Frontend\Helpers\Common helper
 */.
class AbstractController extends \Phalcon\Mvc\Controller
{

}

<强>的TestController

class TestController extends AbstractController
{
    public function indexAction()
    {
        $this->helper->...
    }
}