Кто-нибудь знает, имеет ли PHPStorm некоторую встроенную поддержку для просмотра вспомогательной автозаполнения или возможность написать для нее плагин. Я не хочу использовать встроенные определения var для этого, поскольку это было бы громоздким сделать, если я использую много помощников вида
$this->inlineScript()-> //I want some autocomplete here. $this->translate('some translation')-> //Please give me autocompletion
Если я буду использовать определения var, это закончится чем-то вроде этого, но это действительно загромождает мое мнение:
/* @var $inlineScript \Zend\View\Helper\InlineScript */ $inlineScript = $this->inlineScript(); $inlineScript-> //Now I have autocompletion goodness /* @var $translate \Zend\I18n\View\Helper\Translate */ $translate = $this->translate(); $translate('some translation')-> //Now I have autocompletion goodness
ПРИМЕЧАНИЕ. Я отправляю свой метод, обсуждаемый в комментариях, в качестве ответа.
Чтобы ввести существующие несуществующие методы, синтаксис следующий:
/** * @method \Zend\Mvc\Controller\Plugin\Url url(string $route = null, array $params = null) */ class MyClass { }
Это позволяет нам использовать тип-подсказку для url
-адреса метода для любой переменной, известной как MyClass
:
/* @var $a \MyClass */ $a->// typehint!
Вам нужен такой «поддельный» класс, а затем запустите сценарии просмотра с помощью:
/* @var $this \MyFakeClass */
Это даст вам подсказки типа $this
в вашем скрипте просмотра. В идеале вы можете открыть запрос на перенос https://github.com/zendframework/zf2 с чем-то похожим на https://github.com/zendframework/zf2/pull/3438