PhpStorm将本地变量重构为类字段

时间:2016-06-01 19:06:40

标签: php ide refactoring phpstorm

与主题一样,我想将局部变量重构为类字段。

我在考虑两种方法:

一个。简单快捷:
我想重构从$var$this->var的变量名称。

B中。扩展版本:

来自:

class x {
    function y() {
        $var = new targetClass;
    }
}

为:

class x {
    /** @var targetClass $var */ // version C, optional
    (public|protected|private) $var;
    function y() {
        $this->var = new targetClass;
    }
}

如果我尝试重构$var,只需将其重构为$this->var,我就无法执行此操作,最后会收到一条消息:

  

插入的标识符无效

首先定义$this->var也不会有任何帮助。

我找到的唯一解决方法是键入$this->var,忽略重构变量,输入任意内容并删除它。然后PhpStorm被欺骗并且变量被改变。简单的脏盖方法A。

2 个答案:

答案 0 :(得分:3)

选择变量并右键单击。选择Refactor-> Extract-> Field。输入您不想在该字段中输入的名称。

答案 1 :(得分:0)

现在使用 PhpStorm 2021.x 应用以下步骤:

  1. 点击变量。不要不要标记它!
  2. 右键单击。
  3. Refactor | Introduce Field