提取参数
提取参数重构用于向函数声明添加新参数并相应地更新函数调用。
就地提取 PHP 参数
默认情况下,PhpStorm 中启用了就地重构。因此,如果您没有更改此设置,PHP 的提取参数重构将在编辑器中就地执行:
在编辑器中,将插入符号放置在要被参数替换的表达式中。
执行以下操作之一:
按Ctrl+Alt+P。
选择重构 | 提取物 | 主菜单中的参数。
选择重构 | 提取物 | 上下文菜单中的参数。
如果在当前插入符号位置检测到多个表达式,则会出现表达式列表。如果是这种情况,请单击表达式以将其选中。或者,按Up或Down导航至感兴趣的表达,然后按Enter将其选中。
在带有红色边框的框中键入参数名称。
要完成重构,请按Tab或Enter。
如果您尚未完成重构并想取消所做的更改,请按Escape。
请注意,有时您可能需要多次按下相应的键。
使用“提取参数”对话框提取参数
为了能够使用提取参数对话框(而不是就地执行重构),请确保在编辑器设置中关闭启用就地重构选项。
一旦出现这种情况,您将执行提取参数重构,如下所示:
在编辑器中,将插入符号放置在要被参数替换的表达式中。
执行以下操作之一:
按Ctrl+Alt+P。
选择重构 | 提取物 | 主菜单中的参数。
选择重构 | 提取物 | 上下文菜单中的参数。
如果在当前插入符号位置检测到多个表达式,则会出现表达式列表。如果是这种情况,请单击表达式以将其选中。或者,按Up或Down导航至感兴趣的表达,然后按Enter将其选中。
在打开的对话框中:
在名称字段中指定参数名称。
如果在函数体中发现不止一次出现的表达式,您可以选择仅用对新参数的引用替换选定的出现或所有找到的出现。使用替换所有匹配项复选框来指定您的意图。
PHP 示例
在下面的示例中,将新参数$c添加到Calculate()函数以替换10:
前 | 后 |
---|---|
类 Class1 { public function Calculate($i){ while ( $i < 10 ) { $i = $i + 1; }; 返回$i; } 公共函数 DisplaySum(){ $a = 1; $result = $this -> 计算($a); echo "最终结果是"。$结果; } }
|
类 Class1 { public function Calculate($i,$c){ while ( $i < $c ) { $i = $i + 1; }; 返回$i; } 公共函数 DisplaySum(){ $a = 1; $result = $this -> 计算($a, 10); echo "最终结果是"。$结果; } }
|
JavaScript 示例
前 | 后 |
---|---|
将向此函数添加一个新参数以替换1:
function calculate_sum(i) { alert('添加 ' + 1 + ' 到 ' + i); 返回 (1 + i); } function show_sum() { alert('结果:' + calculate_sum(5)); }
| 新参数i2已作为可选参数添加:
函数计算和(i,i2){ i2 = i2 || 1个;alert('添加 ' + i2 + ' 到 ' + i); 返回 (i2 + i); } function show_sum() { // 函数调用没有改变: alert('Result: ' + calculate_sum(5)); }
|
将向此函数添加一个新参数以替换1。添加新参数时,我们将指定它应该是必需的。
function calculate_sum(i) { alert('添加 ' + 1 + ' 到 ' + i); 返回 (1 + i); } function show_sum() { alert('结果:' + calculate_sum(5)); }
| 新参数i2已添加为必需参数:
function calculate_sum(i, i2) { alert('添加 ' + i2 + ' 到 ' + i); 返回 (i2 + i); } function show_sum() { alert('结果:' + calculate_sum(5, 1)); }
|
有关详细信息,请参阅JavaScript 中的提取参数。