与主题一样,我想将局部变量重构为类字段。
我在考虑两种方法:
一个。简单快捷:
我想重构从$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。
答案 0 :(得分:3)
选择变量并右键单击。选择Refactor-> Extract-> Field。输入您不想在该字段中输入的名称。
答案 1 :(得分:0)
现在使用 PhpStorm 2021.x 应用以下步骤:
Refactor
| Introduce Field