Параметры camelCase в установщике в PhpStorm - PullRequest
0 голосов
/ 07 ноября 2018

В моем классе есть именованные свойства under_score, такие как transaction_id или web_order_item_id. И я хочу настроить имя параметра в моих установках при его генерации.

Пока он генерирует это:

/**
 * @param int $original_transaction_id .camelCase()
 */
public function setOriginalTransactionId(int $original_transaction_id): void
{
    $this->original_transaction_id = $original_transaction_id;
}

Но я хочу это:

/**
 * @param int $originalTransactionId .camelCase()
 */
public function setOriginalTransactionId(int $originalTransactionId): void
{
    $this->original_transaction_id = $originalTransactionId;
}

Я пытался изменить это поведение в Настройки / Редактор / Шаблоны файлов и кодов / Метод установки кода / Php , но я не смог найти способ сделать это. В шаблоне есть переменная:

${NAME}

Но он вернул значение в этой форме $ OriginalTransactionId вместо $ originalTransactionId

1 Ответ

0 голосов
/ 07 ноября 2018

Вы можете попробовать использовать Apache Velocity StringUtils здесь, например

#set($Setter_param = ${StringUtils.removeAndHump(${PARAM_NAME})})
#set($Setter_param = $Setter_param.substring(0,1).toLowerCase() + $Setter_param.substring(1))

/**
 * @param ${TYPE_HINT} $${Setter_param}
 */
public ${STATIC} function set${NAME}(#if (${SCALAR_TYPE_HINT})${SCALAR_TYPE_HINT} #end$${Setter_param})#if (${VOID_RETURN_TYPE}):void #end
{
#if (${STATIC} == "static")
    self::$${FIELD_NAME} = $${Setter_param};
#else
    $this->${FIELD_NAME} = $${Setter_param};
#end
}
...