PhpStorm 2018.3 Help

Refactoring Source Code

Refactoring is a process of improving your source code without creating a new functionality. Refactoring helps you keep your code solid, dry, and easy to maintain.

Invoke refactoring

  1. Select an item to refactor. You can select a file/folder in the Project tool window or expression/symbol in the editor.

  2. Press Ctrl+Shift+Alt+T to open a pop-up list of refactorings that can be selected.

    refactor this popup
    Alternatively, you can use a keyboard shortcut for a specific refactoring.

If you need to undo your refactoring, press Ctrl+Z.

Preview refactoring changes

For some refactorings, PhpStorm lets you preview changes before applying them.

  1. To see potential changes, click Preview in the Refactoring Preview dialog.

    Refactoring dialog

  2. Check the changes that are going to be made in the Find tool window. You can Exclude (Delete) or Remove (Ctrl+X) changes that you consider unnecessary.

    Refactoring preview

  3. Click Do Refactor (N/A) to proceed with the changes.

Resolve conflicts

When PhpStorm encounters problems with your refactoring, it opens a dialog with the list of conflicts and their brief descriptions.

Refactoring conflicts dialog
  • Click Continue to ignore the problem and proceed to open the preview in the Find tool window.

  • Click Show Conflicts in View to open the conflict entries in the Find tool window and deal with them further.

    For example, you can try to exclude an entry from refactoring by pressing Delete or click Cancel and return to the editor.

    Refactoring conflicts tool window

Configure refactoring settings

  1. In the Settings/Preferences dialog (Ctrl+Alt+S), select Editor | General.

  2. On the General page, in the Refactorings section, adjust the refactoring options and click OK.

The most popular refactorings supported in PhpStorm

Safe Delete

Alt+Delete

Makes sure that you do not delete files that are referenced in your source code.

Safe Delete

Copy/Move

F5/F6

Copies/Moves an element.

Move and Copy refactorings

Extract Method

Ctrl+Alt+M

These refactoring actions help you reduce the code duplication.

Extract method

Extract Constant

Ctrl+Alt+C

Declares a new constant and initializes it with the selected expression.

Extract Constant

Extract Field

Ctrl+Alt+F

Declares a new class field and initializes it with the selected expression.

Extract Field

Extract Parameter

Ctrl+Alt+P

Adds a new parameter to a method declaration and updates the method calls accordingly.

Extract Parameter

Extract Variable

Ctrl+Alt+V

Declares a new variable and initializes it with the selected expression.

Extract Variable

Rename

Shift+F6

Renames an element.

Rename Refactorings

Inline

Ctrl+Alt+N

Inlines an element. Acts as opposite of extracting.

Inline

Change signature

Ctrl+F6

Changes the call signature of a method.

Change Signature

Last modified: 7 December 2018

See Also