Автодополнение глобальных переменных в PhpStorm 6

ilyatut

Новичок
Добрый день!

Решил выбрать какую-нибудь хорошую IDE для разработки. По многочисленным положительным отзывам выбрал PhpStorm. И тут же столкнулся со странной особенностью: автодополнение не видит переменные, определённые в подключённых файлах.

Допустим, в проекте всего два файла: index.php и included.php.

included.php:
PHP:
<?php
    $variable = 'Test';
	
    // если здесь начать набирать $var, появится список
    // автодополнения с переменной $variable
?>
index.php:
PHP:
<?php
    require_once('included.php');
    // если здесь начать набирать $var, появится список
    // автодополнения, но уже без переменной $variable
?>
Собственно, есть ли способ получить эту переменную в списке автодополнения?
Тот же phpDesigner 8 делает это запросто, а PhpStorm 6 спотыкается.

Дело в каких-то настройках?
Или это принципиальный подход разработчиков IDE?
 

ilyatut

Новичок
Ага, спасибо. С этим разобрался.
Просто у меня по умолчанию выводятся эти выпадающие списки, я не нажимаю для этого специально "Ctrl + Space".
Поэтому эта надпись "Press again..." меня смутила поначалу. Непонятно было, что конкретно "press again". Сейчас раскопал в хелпе.
"Press Ctrl + Space again..." было бы понятнее.

Вот что сами разработчики пишут в своём блоге:
PHP completion has been reworked to include only local scope on first invocation. Just press Ctrl+Space again to see all global variants.
This new behavior is a bit controversial so please let us know how it works for you
То есть, на каком-то этапе выводилось всё. Потом переделали.

А есть возможность где-нибудь в настройках сделать этот режим по умолчанию?
 

флоппик

promotor fidei
Команда форума
Партнер клуба
На самом деле, при нормальной разработке, такого и не надо хотеть - глобальные переменные, раскиданные по разным файлам - явное зло.
 

ilyatut

Новичок
На самом деле, при нормальной разработке, такого и не надо хотеть - глобальные переменные, раскиданные по разным файлам - явное зло.
Да, согласен.

Проблема в том, что иногда приходится иметь дело с этим злом, как с данностью.
Например, если приходится дорабатывать чужой код, самописные CMS и прочую муть.
Приходит кто-нибудь и говорит: на сайте что-то не работает, нужно разобраться.
Человеку нравятся костыли и он готов за них платить, почему бы и нет.
Не переписывать же там всё с нуля.

И мне конечно было бы приятно, если бы IDE подхватила всю структуру сайта и как-то её обозначала при работе с кодом.
К тому же, как я писал в исходном посте, тот же phpDesigner делает это.
То есть, технически — это вполне выполнимо.
 
Сверху