Как генерировать верблюжьих геттеров и сеттеров в Zend Studio 7 (для Eclipse)? - PullRequest
2 голосов
/ 30 июня 2010

Пример:

protected $_labelName = null;

Должно генерировать

public function getLabelName()
{
    $this->_labelName;
}

public function setLabelName($labelName)
{
    $this->_labelName = $labelName;
    return $this;
}

Но это порождает

public function get_labelName()
{
    return $this->_labelName;
}

public function set_labelName($_labelName)
{
    $this->_labelName = $_labelName;
    return $this;
}

Как вы могли видеть - это выглядит по-другому, но я не нашел способа, как изменить имя метода и обрезать имя параметра set метода.

Ответы [ 2 ]

0 голосов
/ 30 июня 2010

Простой обходной путь: назовите свое имя переменной $ labelName, затем сгенерируйте методы получения и установки и, наконец, выполните рефакторинг / переименование переменной var, чтобы она стала $ _labelNameРаботает в Zend Studio 7.2 (просто скачайте пробную версию, чтобы проверить это: p).

0 голосов
/ 30 июня 2010

Вы можете изменить тело метода (и комментарий), нажав

Window > Preferences > PHP > Editor > Templates

Я не думаю, что вы можете изменить сигнатуру метода.Я открою билет с Zend и попрошу способ его поменять.Немного раздражает, что главная среда IDE для Zend Framework генерирует геттеры и сеттеры, которые не соответствуют соглашению о кодах ZF.

EDIT Это было исправлено в Zend Studio 8. Когда вы генерировали геттеры/ Setters, они не будут включать в себя нижнее подчеркивание, указывающее частную или защищенную видимость.Все нижние подчеркивания в имени участника будут сохранены, например, $_foo сгенерирует getFoo() и setFoo($_foo), а $_foo_bar (что недопустимо в соответствии с соглашением ZF) сгенерирует getFoo_bar() и setFoo_bar($_foo_bar)

...