PhpStorm 2016.3 Help

Inline

PhpStorm provides the following inline refactorings:

  • The Inline Variable refactoring replaces redundant variable usage with its initializer. This refactoring is opposite to Extract Variable.
  • The Inline Function/Method refactoring results in placing the method's or function's body into the body of its caller(s); the method or function is deleted. This refactoring is opposite Extract Method.

Inline Variable

    PHP Example

    BeforeAfter
    public function getFeedObject($title, $description) { global $wgSitename, $wgContLanguageCode, $wgFeedClasses, $wgTitle; $feedTitle = "$wgSitename - {$title} [$wgContLanguageCode]"; if (!isset($wgFeedClasses[$this->format])) return false; return new $wgFeedClasses[$this->format] ($feedTitle, htmlspecialchars()); }
    public function getFeedObject($title, $description) { global $wgSitename, $wgContLanguageCode, $wgFeedClasses, $wgTitle; if (!isset($wgFeedClasses[$this->format])) return false; return new $wgFeedClasses[$this->format] ("$wgSitename - {$title} [$wgContLanguageCode]", htmlspecialchars()); }

    JavaScript Example

    BeforeAfter
    Parenizor.method('toString', function () { var string = '(' + this.getValue() + ')'; return string; }
    Parenizor.method('toString', function () { return '(' + this.getValue() + ')'; }

    Inline Method or Function

    BeforeAfter
    function sum(a, b){ return a + b; } function multiplication(a, b){ c = sum(a, b); d = c * c; return d; } function division(a, b){ result = sum(a, b) / multiplication(a, b); return result; }
    function multiplication(a, b){ c = a + b; d = c * c; return d; } function division(a, b){ result = a + b / multiplication(a, b); return result; }

    To perform the inline refactoring

    1. Place the caret in the editor at the desired symbol to be inlined.
    2. Do one of the following:
      • On the main menu or on the context menu, choose Refactor | Inline.
      • Press Ctrl+Alt+N.
    3. In the Inline dialog box that corresponds to the selected symbol, confirm the inline refactoring.

    See Also

    Last modified: 23 March 2017