はじめに
長いメソッドを複数のメソッドに分割する事ってよくありますよね?
引数が多かったりするとなかなか大変だったりしますが、
PhpStormなら簡単にできます!
Before
こんなメソッドがあるとします。
class Hoge
{
function a($data)
{
$test1 = 'test';
$test2 = 'test';
$test3 = 'test';
foreach ($data as $k => $v) {
$data[$k]['a'] = $test1;
$data[$k]['b'] = $test2;
$data[$k]['c'] = $test3;
}
return $data;
}
}
そしてここを別メソッドに切り出したいとします。
foreach ($data as $k => $v) {
$data[$k]['a'] = $test1;
$data[$k]['b'] = $test2;
$data[$k]['c'] = $test3;
}
操作方法
After
class Hoge
{
function a($data)
{
$test1 = 'test';
$test2 = 'test';
$test3 = 'test';
$data = $this->b($data, $test1, $test2, $test3);
return $data;
}
/**
* @param $data
* @param $test1
* @param $test2
* @param $test3
*
* @return mixed
*/
public function b($data, $test1, $test2, $test3)
{
foreach ($data as $k => $v) {
$data[$k]['a'] = $test1;
$data[$k]['b'] = $test2;
$data[$k]['c'] = $test3;
}
return $data;
}
}
おわりに
PhpStormならリファクタリングがものすごい楽です。
他にもメソッド名の一括変更や引数の順番の変更とか色んな事ができます。
是非使ってみてください。