PhpStorm отличная IDE. Но даже с отличным инструментом работа превращается в это, если неправильно им пользоваться.
Это касается и работы с Symfony2 проектами. PhpStorm обеспечивает неплохую поддержку этого фреймворка из коробки, но нужно больше золота. Что же мы получим в итоге:
Нам понадобятся всего три плагина:
Поэтому первым делом нужно все это установить. Открываем настройки (Ctrl + Alt + S), раздел Plugins. И жмем среднюю кнопку под списком: Browse repositories... В появившемся окне находим вышеуказанные плагины и устанавливаем их в таком же порядке, как выше, т.к. они зависимые. Теперь жмем OK и перезапускаем PhpStorm. Теперь в списке плагинов у вас должно быть примерно такое:
Далее нам понадобится проект на Symfony2. Создаем новый проект из готовых файлов, или открываем свой, а можно создать проект через FTP. В общем, нужен проект.
Скорее всего, PhpStorm сейчас сам определит, что проект на Symfony2 и предложит включить интеграцию. Можно смело с ним соглашаться, однако автоматически настроится далеко не все.
Заходим снова в настройки (Ctrl + Alt + S), в раздел PHP -> Framework Integration. Ставим галочку Enable framework integration и выбираем в списке Symfony2. Далее вручную проставляем роли папок проекта. Чтобы указать папке роль нужно мышкой щелкнуть на вторую колонку, появится выпадающий список. Если вы работаете с Symfony2, то интуитивно догадаетесь что куда, но на всякий случай привожу скриншот:
Теперь идем в раздел настроек Symfony2 Plugin. Ставим галочку Enable plugin for this project. И перезапускаем PhpStorm. На этом настройка проекта закончена, пробуйте.
Конечно все эти плагины имеют еще кучу настроек, в которых копайтесь уже самостоятельно. В 99% случаев менять там ничего не придется.
Внимание. Для корректной работы половины указанных фишек требуется наличие некоторых файлов из кеша:
В общем, в идеале нужно работать на локальном сервере. Но можно прекратно обходиться FTP, как это делаю я, просто скачав нужные файлы из кеша.
Так же советую прочитать статью о продуктивной работе в PhpStorm, т.к. о многих функциях просто так не догадаться.
В более новых версиях PHP Storm вкладка Framework Intergration может отсутствовать. Если у вас именно так, то следует вручную установить плагин Framework MVC Structure Support из репозитория и вкладка появится. Framework Intergration появится в разделе Other Settings.