Компоновка экрана среды IDE NetBeans для редактора PHP
Редактор содержит следующие окна:
"Проекты" (отображает список проектов, существующих на настоящий момент времени).
"Файлы" (отображает файлы по каждому проекту).
"Службы" (отображает списки внешних служб, доступных на настоящий момент времени, например, баз данных).
С помощью сочетания клавиш CTRL+7 можно также открыть окно "Навигатор" на левой панели.
Выделение синтаксиса
Редактор обеспечивает выделение синтаксиса для блоков кода на языке PHP, HTML, JavaScript и CSS.
В текущей версии выделяются следующие элементы синтаксиса:
Ключевые слова языка PHP
Переменные языка PHP
Константы языка PHP
Теги HTML
Атрибуты формы ввода HTML
Текущая строка отображается на голубом фоне.
Если дважды щелкнуть переменную, функцию или класс языка PHP, все вхождения этой переменной выделяются оливковым цветом.
Строки, в которых обнаружены ошибки, подчеркиваются красным.
В целях изменения параметров выделения выберите Сервис > Параметры и перейдите на вкладку "Шрифты и цвета". Укажите требуемые параметры.
Переход к объявлению
Функция "Перейти к объявлению" позволяет пользователю перейти от просмотра вхождений переменной в ту строку, где эта переменная объявлена или инициализирована. Для использования этих функциональных возможностей установите курсор на соответствующем вхождении переменной и выберите в контекстном меню "Navigate > Go to Declaration" или нажмите сочетание клавиш CTRL+B.
Навигатор
Навигатор позволяет получить представление о коде путем просмотра структуры кода в виде элементов списка, содержащего структуры PHP активного файла. Если файл содержит любые другие источники кода (например HTML), соответствующие структуры также отображаются в списке. Если дважды щелкнуть класс, функцию или переменную в списке, курсор перемещается к объявлению этого элемента.
Как правило, список навигатора не содержит вложенных списков, но может содержать вложенные структуры для сложных операторов. Например, оператор объявления класса PHP может быть представлен в виде дерева объявленных элементов класса.
Список динамически обновляется по мере изменения кода пользователем.
Окно "Навигатор" отображается в нижней части левой панели.
Для открытия окна "Навигатор" нажмите CTRL+7.
Из раскрывающегося списка "Навигатор" выберите "Навигатор". Появится дерево, отображающее иерархию структур HTML и структур PHP.
Для перемещения к требуемому элементу дважды щелкните соответствующий узел в списке.
Свертывание кода
Редактор включает функцию сокрытия и отображения по выбору пользователя модулей, классов и функций файла с исходным кодом на языке PHP, редактируемого в настоящий момент. Для сворачивания или вывода на экран фрагмента кода щелкните значок "-" или "+" слева от кода.
Интеллектуальный отступ
В течение ввода пользователем кода в редакторе выполняется его автоматическое форматирование.
Форматирование
Для форматирования фрагмента кода с целью упрощения его восприятия выполните следующие действия:
Выберите соответствующий фрагмент кода.
В контекстном меню, отображаемом по щелчку правой кнопкой мыши, выберите команду "Форматировать" или нажмите сочетание клавиш ALT+SHIFT+F.
Автозавершение расстановки скобок
В течение ввода пользователем кода в редакторе осуществляется автоматическое добавление и удаление парных скобок и кавычек.
После ввода первого элемента добавляется закрывающий элемент парных одиночных (' ') и двойных (" ") кавычек, а также круглых и квадратных скобок.
В конце строки к закрывающей одиночной или двойной кавычке добавляется точка с запятой.
Закрывающая фигурная скобка добавляется после нажатия клавиши ВВОД, что также активирует функцию интеллектуального отступа.
Удаление открывающей одиночной или двойной кавычки, а также круглой или квадратной скобки вызывает автоматическое удаление соответствующего закрывающего символа, но не приводит к удалению точки с запятой в конце строки.
Если курсор установлен на закрывающей скобке (круглой, квадратной или фигурной) соответствующая открывающая скобка выделяется желтым.
Реорганизация в связи с переименованием и быстрое переименование
Элемент, например имя класса, можно переименовать для всех файлов в проекте. Данная функция предполагает предварительный просмотр изменений перед их внесением. В окне предварительного просмотра отображаются все местоположения элемента, что позволяет переименовать их все одновременно. Функция реорганизации в связи с переименованием противоположна функции быстрого переименования, которая была введена несколько раньше. Она позволяет переименовать лишь элемент в отдельном файле без использования окна предварительного просмотра.
Для быстрого переименования установите курсор на имени, которое требуется изменить, и нажмите сочетание клавиш CTRL+R. Если к переменной применяется быстрое переименование, выделяются все экземпляры этой переменной или функции.
При изменении одного экземпляра имени все остальные его экземпляры в файле синхронно изменяются таким же образом.
Для использования реорганизации в связи с переименованием выделите элемент, который требуется переименовать, и нажмите сочетание клавиш CTRL+R или щелкните правой кнопкой мыши и выберите команды "Реорганизация кода" > "Переименовать". Появится диалоговое окно, в котором можно переименовать элемент.
Переименуйте элемент и нажмите кнопку "Предварительный просмотр". Откроется диалоговое окно "Реорганизация кода". В этом окне отображаются все экземпляры элемента в проекте и определяется необходимость переименования.
Набор функций, упрощающих и ускоряющих процесс написания кода, называется "Автозавершение кода". Функциональные возможности автозавершения кода еще не до конца разработаны; полный диапазон возможностей будет доступен в будущих версиях NetBeans.
С помощью фрагментов автоматически создается код для различных элементов.
Выберите путь "Сервис > Палитра > Ограничители кода HTML/JSP". На правой панели появится палитра, содержащая различные элементы интерфейса пользователя.
Перетащите нужный значок из палитры к соответствующему символу кода. Появится диалоговое окно для указания параметров соответствующих элементов. Введите данные.
Код для отображения требуемого элемента будет создан и помещен в выбранное местоположение.
Контекстно-зависимые предложения
В редакторе могут использоваться контекстно-зависимые предложения для автозавершения любого количества следующих начальных символов:
Ключевое слово PHP: "if", "else", "elseif", "while", "switch", "function" и т.д.
Встроенная функция PHP: "count", "substr" и т.д.
Предварительно определенная или определяемая пользователем переменная
Редактор не только предлагает возможные варианты, но также отображает подсказки по вводу параметров. Для применения функции автозавершения кода выполните следующее:
Введите начальные символы требуемой строки.
Нажмите сочетание клавиш CTRL+ПРОБЕЛ. Контекстно-зависимые предложения отображаются в раскрывающемся списке. Каждому предложению соответствует описание и подсказки по вводу параметров. Содержание списка изменяется по мере ввода новых символов.
Для получения списка ключевых слов PHP, которые являются доступными в текущем контексте, нажмите сочетание клавиш CTRL+ПРОБЕЛ (ввод данных перед этим не требуется).
Для просмотра подсказки относительно переменной достаточно ввести символ "$". Появится список всех доступных в настоящее время локальных и глобальных переменных.
Шаблоны кода и аббревиатуры
В данном контексте термин "Сокращения" относится к набору предварительно определенных строк символов, которые соответствуют ключевым словам, используемым в языке программирования. Каждое из сокращений связано с каким-либо расширенным текстом, содержащим полное ключевое слово, а также соответствующий ему шаблон кода с подсказками на ввод параметров. Для применения этих функциональных возможностей введите сокращение и нажмите клавишу Tab.
Сокращение заменяется соответствующим ключевым словом, к которому предоставляется шаблон кода.
Для просмотра списка определенных сокращений с шаблонами кода выполните следующее:
Выберите путь Сервис > Параметры > Редактор > Шаблоны кода.
В раскрывающемся списке "Язык" выберите параметр "PHP". На экран будет выведен список сокращений PHP с шаблонами кода.
Для добавления определения в список или удаления его из списка используются соответственно кнопки "Создать" или "Удалить".
Для редактирования определения выберите соответствующую строку и измените текст в поле редактирования, находящемся ниже списка.
После добавления ключевого слова new окно автозавершения кода отображается с конструкторами и параметрами для всех доступных классов в проекте.
Автозавершение кода SQL
Отображается автозавершение кода SQL, если строка начинается с ключевого слова SQL "select." Сначала необходимо выбрать подключение к базе данных.
Отображаются все подключения к базам данных, зарегистрированные в среде IDE.
После выбора подключения функция автозавершения кода SQL предлагает все таблицы из этого подключения к базе данных.
Если в таблице существуют столбцы, они также отображаются.
Автозавершение кода SQL также работает с псевдонимами таблицы.
Пространства имен PHP 5.3
Код автозавершения поддерживает полностью определенные, частично определенные и неопределенные имена в пространстве имен PHP 5.3. Дополнительные сведения приведены в экранном путеводителе.
Переопределенные и реализованные методы
Автозавершение кода при вызове между членами класса предлагает переопределение или реализацию методов.
Внимание! PHPDocumentor не обеспечивает полную поддержку PHP 5.3. Пространства имен и некоторые другие функции 5.3 невозможно задокументировать с помощью PHPDocumentor.
Генераторы кода
При нажатии сочетания клавиш ALT+INSERT (CTRL+I в Mac OS) открывается меню со всеми возможными генераторами кода. Список генераторов кода чувствителен к контексту. Он зависит от позиции курсора в коде в момент нажатия сочетания клавиш. В зависимости от позиции в коде, можно генерировать подключение к базе данных, таблицы базы данных, текст для проверки, и другие элементы. В этом разделе рассмотрены следующие генераторы кода:
Для создания конструкторов нужно нажать сочетание клавиш ALT+INSERT (CTRL+I в Mac OS), когда курсор находится внутри тела класса, но не внутри функций. При выборе пункт "Создать... Конструктор" открывается диалоговое окно со списком полей, которые можно инициализировать в конструкторе. Имена полей используются в качестве имен параметров конструктора.
Можно не выбирать ни одного поля. В этом случае будет создан пустой конструктор без параметров. Если поле — это класс, имеющий свойства, можно либо выбрать отдельные свойства, либо выбрать класс (при этом все свойства класса выбираются автоматически).
Для создания методов получения и установки можно использовать сочетание клавиш ALT+INSERT (CTRL+I на Mac), когда курсор находится внутри тела класса, и выбрать пункт "Метод получения", "Метод установки" или "Методы получения и установки". Отображаются только возможные варианты функций. Например, если для всех доступных свойств уже созданы методы установки, отображается только вариант создания функций получения.
При выборе пункта "Создать" ... "Метод получения", "Метод установки" и "Методы получения и установки" отображается диалоговое окно со свойствами, для которых можно создать метод получения или установки. Свойства отображаются в виде дерева. При выборе родительского класса автоматически выбираются все его свойства.
Метод получения или установки можно назвать в соответствии с нотацией getName или get_name.
Для создания переопределенных или реализованных методов можно нажать ALT+INSERT (CTRL+I в Mac OS), когда курсор находится внутри определения класса и существует несколько членов класса. В диалоговом окне отображаются методы, которые можно добавить, и показано, будут ли они переопределены или реализованы.
В редакторе предлагаются пользователю предлагаются подсказки по вводу формальных параметров функции или метода в контексте, в котором была вызвана эта функция или метод.
Введите начальные символы функции, которую требуется вызвать.
Нажмите сочетание клавиш CTRL+ПРОБЕЛ. В раскрывающемся списке содержатся контекстно-зависимые предложения с формальными параметрами для каждого из них.
Выберите требуемое предложение и нажмите клавишу ВВОД. В текст кода вводится имя выбранной функции, при этом в скобках отображается шаблон для ввода параметров.
Определение типа переменной в комментариях
Переменную и ее тип можно определить в комментарии. Комментарий должен иметь формат /* @var $variable type */ . Если комментарий составлен правильно, тег var отображается полужирным шрифтом.
Для создания комментария, определяющего переменную, можно вставить шаблон кода vdoc после табулятора. Имя переменной выделяется и становится доступным для изменения. Повторно нажмите клавишу табулятора для выбора типа.
Шаблон кода автоматически устанавливает имя и тип переменной. Если переменная используется после места вставки шаблона, то следующее имя переменной предлагается по умолчанию. Если переменная, используемая после места вставки шаблона, не существует, но переменная была использована выше шаблона, то имя этой предшествующей переменной предлагается по умолчанию. Если среда IDE NetBeans не может обнаружить переменную вблизи от места использования шаблона, то именем по умолчанию является variable. Тип переменной устанавливается автоматически согласно таким же правилам.
Сообщения об ошибках
В течение ввода данных пользователем редактор анализирует синтаксис кода и отмечает ошибки (подчеркивает ошибочные строки и устанавливает красный круг рядом с каждой из них). Для получения пояснения ошибки щелкните строку, содержащую ошибку, или соответствующий ей красный кружок. Появится всплывающая подсказка с кратким пояснением ошибки.
Тестирование с помощью PHPUnit и Selenium
В среде IDE NetBeans для PHP поддерживаются средства автоматического тестирования PHPUnit. Благодаря PHPUnit среда IDE NetBeans предоставляет охват кода для PHP, подобный охвату кода, предоставляемому средой IDE для Python и Ruby. Результат теста отображается в том же самом многофункциональном окне результатов, которое также используется при тестировании в JUnit, Ruby и Python среды IDE.
Среда IDE NetBeans также поддерживает переносимую платформу тестирования Selenium в комбинации с PHPUnit. Подключаемый модуль Selenium доступен из центра обновления. При установке этот подключаемый модуль добавляет сервер Selenium к зарегистрированным серверам среды IDE, а также добавляет параметры тестирования Selenium к меню PHP.
Поддержка платформ Symfony и Zend встроена в редактор PHP. При этом происходит распознавание существующей платформы Symfony и на последней панели мастера создания новых проектов PHP появляется возможность добавления платформы к новым проектам.
В проектах PHP с поддержкой Symfony или Zend существует возможность запуска команд Symfony или Zend из контекстного меню проекта.
Команды интерфейса пользователя позволяют:
Фильтровать команды Symfony/Zend (1)
Задавать параметры команды (2)
Выбирать команды (3)
Просматривать контекстные справочные сведения о команде (4)
Предварительно просматривать команду перед исполнением (5)
Список команд зависит от проекта. Это обозначает, что если, например, используется команда Doctrine вместо Propel, то команда Propel в списке представлена не будет, а будет представлена только команда Doctrine. Также доступны все команды из подключаемых модулей Symfony.
Автозавершение кода включает в себя переменные Symfony в представлениях Symfony и переменные Zend в представлениях Zend.
Также среда IDE обеспечивает навигационные ссылки между различными представлениями и действиями платформ Symfony или Zend. Эти навигационные ссылки были улучшены в среде NetBeans 6.9. Кроме того, автозавершение кода в шаблонах/файлах view теперь включает в себя переменные, определенные в файлах controller/action. Подробности приведены в записи блога NetBeans PHP.
Дополнительные сведения об использовании поддержки Symfony приведены в экранном путеводителе Symfony.
Дополнительные сведения об использовании поддержки платформы Zend приведены в экранном путеводителе Zend.
Оставить комментарии и предложения, обратиться за поддержкой и получить сведения о последних достижениях в области возможностей разработки для PHP с помощью среды IDE NetBeans можно в списке рассылки .