Как я могу автоматически добавить пространство имен в новый класс PHP в Netbeans 7.0 - PullRequest
8 голосов
/ 23 июня 2011

Я могу редактировать шаблон класса PHP через «Инструменты»> «Диспетчер шаблонов», а затем «Класс PHP»> «Редактировать». Каркас моего проекта поддерживает автозагрузку с использованием пространств имен, поэтому я хочу автоматически добавлять пространство имен в начало файла всякий раз, когда я создаю новый класс PHP. Как я могу это сделать?

И, кроме того, как я могу узнать, какие переменные доступны для меня в шаблоне?

Ответы [ 3 ]

2 голосов
/ 08 декабря 2013

ОБНОВЛЕНИЕ: Это было быстро! Я допускаю очень скудное тестирование здесь, но оно работает, если вы используете New -> PHP Class... через пользовательский интерфейс. Затем вы выбираете пространство имен в раскрывающемся списке. И вуаля. Я использовал New -> PHP File..., который не предоставляет раскрывающийся список пространства имен (как ни странно, а может, я просто что-то пропустил). Настройте шаблон класса PHP по мере необходимости. Сортировка.


Я тоже почесал голову об этом и нашел следующий отчет об ошибке . Согласно инструкции (внизу), вы редактируете файл шаблона и добавляете:

<#if namespace?? && namespace?length &gt; 0>
namespace ${namespace};
</#if>

Затем Netbeans делает оценку на основе расположения файлов и других возможных пространств имен в каталоге. Честно говоря, мне вполне удалось заставить его работать, но я уверен, что я не за горами ... вероятно ... U_U

Я обязательно обновлю это, если сделаю.


SIDE NOTE : Вы можете добавить любые переменные в шаблон. Перейдите к (в окнах) \AppData\Roaming\NetBeans\7.4[your version here]\config\Templates\Properties\User.properties (создайте его, если оно отсутствует)

Затем создайте что-то вроде этого:

user=Ms Angelina Jolie Lookalike Honest <no.spam.thanks@gmail.com>
organization=the.Evolution.of.Awesome
package=SunshineInACan
package2=Framework/UserInterface

Затем в вашем шаблоне сделайте что-то вроде этого:

/**
 * @DNADO   Type description
 *
 * @package     ${package}.${package2}
 * @subpackage
 * @category
 * @author      ${user}
 *
 * @copyright   ${date?date?string("yyyy")} ${organization}
 */

Тогда ... дискотека;)

Чтобы сэкономить немного времени, я помещаю общие параметры в одну переменную и просто удаляю после , когда я создаю файл. Например, ${package2} означает либо 'Framework' или 'UserInterface', но не оба (или оба, если я забуду, вы знаете, как это происходит).

0 голосов
/ 21 февраля 2014

namespace include.class Вы можете использовать классы так же, как include, и для этого требуется функция

0 голосов
/ 01 июля 2011

Я помню, что редактирование шаблона класса по умолчанию вызывало некоторые проблемы, и в итоге я создал новый шаблон класса для своих нужд.Вы можете сделать это, выбрав существующий файл класса и запустив «Сохранить как шаблон» из контекстного меню

Что касается доступных переменных:

Variable Name  Description
 name           contains the name of the file that is being created
 user           contains the user name
 nameAndExt     contains the name and extension of the file that is being created
 date           contains text representing the current day like 23. 3. 2007
 time           contains text the current time like 17:18:30
 encoding       the file encoding of the template instance

Полезные ссылки:

http://blogs.oracle.com/netbeansphp/entry/how_to_manage_templates_in

http://blogs.oracle.com/netbeansphp/entry/how_to_manage_templates_in1

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...