PhpStorm Keyboard Shortcuts Cheat Sheet
A cheat sheet of 96 keyboard shortcuts in JetBrains PhpStorm.
Miscellaneous
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Find Action | Cmd + Shift + A |
Ctrl + Shift + A |
Editing
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Basic code completion | Cmd + Space |
Ctrl + Space |
| Show intentions and quick-fixes | Alt + Enter |
Alt + Enter |
| Parameter info (within method calls) | Cmd + P |
Ctrl + P |
| Quick documentation lookup | Cmd + Q |
Ctrl + Q |
| Brief info | Cmd + (hover over code) |
Ctrl + (hover over code) |
| Generate code… (Getters, Setters, Constructors) | Alt + Insert |
Alt + Insert |
| Override methods | Cmd + O |
Ctrl + O |
| Implement methods | Cmd + I |
Ctrl + I |
| Surround with… (if..else, try..catch, for, etc.) | Cmd + Alt + T |
Ctrl + Alt + T |
| Comment/uncomment with line comment | Cmd + / |
Ctrl + / |
| Comment/uncomment with block comment | Cmd + Shift + / |
Ctrl + Shift + / |
| Select successively increasing code blocks | Cmd + W |
Ctrl + W |
| Decrease current selection to previous state | Cmd + Shift + W |
Ctrl + Shift + W |
| Reformat code | Cmd + Alt + L |
Ctrl + Alt + L |
| Auto-indent line(s) | Cmd + Alt + I |
Ctrl + Alt + I |
| Duplicate current line or selected block | Cmd + D |
Ctrl + D |
| Delete line at caret | Cmd + Y |
Ctrl + Y |
| Smart line join (HTML and JavaScript only) | Cmd + Shift + J |
Ctrl + Shift + J |
| Smart line split (HTML and JavaScript only) | Cmd + Enter |
Ctrl + Enter |
| Start new line | Shift + Enter |
Shift + Enter |
| Toggle case for word at caret or selected block | Cmd + Shift + U |
Ctrl + Shift + U |
| Select till code block start | Cmd + Shift + [ |
Ctrl + Shift + [ |
| Select till code block end | Cmd + Shift + ] |
Ctrl + Shift + ] |
| Delete to word end | Cmd + Delete |
Ctrl + Delete |
| Delete to word start | Cmd + Backspace |
Ctrl + Backspace |
| Expand/collapse code block | Cmd + +/- |
Ctrl + +/- |
| Close active editor tab | Cmd + F4 |
Ctrl + F4 |
| Paste from history | Cmd + Shift + V |
Ctrl + Shift + V |
Debugging
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Step over | F8 |
F8 |
| Step into | F7 |
F7 |
| Step out | Shift + F8 |
Shift + F8 |
| Evaluate expression | Alt + F8 |
Alt + F8 |
| Resume program | F9 |
F9 |
| Toggle breakpoint | Cmd + F8 |
Ctrl + F8 |
| View breakpoints | Cmd + Shift + F8 |
Ctrl + Shift + F8 |
Running
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Run | Shift + F10 |
Shift + F10 |
| Debug | Shift + F9 |
Shift + F9 |
| Run context configuration from editor | Cmd + Shift + F10 |
Ctrl + Shift + F10 |
| Run command line | Cmd + Shift + X |
Ctrl + Shift + X |
Search/Replace
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Find/Replace | Cmd + F/R |
Ctrl + F/R |
| Find next | F3 |
F3 |
| Find previous | Shift + F3 |
Shift + F3 |
| Find/Replace in path | Cmd + Shift + F/R |
Ctrl + Shift + F/R |
Usage Search
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Find usages | Alt + F7 |
Alt + F7 |
| Find usages in file | Cmd + F7 |
Ctrl + F7 |
| Highlight usages in file | Cmd + Shift + F7 |
Ctrl + Shift + F7 |
| Show usages | Cmd + Alt + F7 |
Ctrl + Alt + F7 |
Navigation
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Go to class | Cmd + N |
Ctrl + N |
| Go to file | Cmd + Shift + N |
Ctrl + Shift + N |
| Go to symbol | Cmd + Shift + Alt + N |
Ctrl + Shift + Alt + N |
| Go to line | Cmd + G |
Ctrl + G |
| Go to next/previous editor tab | Alt + Left/Right |
Alt + Left/Right |
| Go to editor (from tool window) | Esc |
Esc |
| Recent files popup | Cmd + E |
Ctrl + E |
| Back/Forward | Cmd + Alt + Left/Right |
Ctrl + Alt + Left/Right |
| Navigate to last edit location | Cmd + Shift + Backspace |
Ctrl + Shift + Backspace |
| Select current file or symbol in any view | Alt + F1 |
Alt + F1 |
| Go to declaration | Cmd + B |
Ctrl + B |
| Go to implementation | Cmd + Alt + B |
Ctrl + Alt + B |
| Open quick definition lookup | Cmd + Shift + I |
Ctrl + Shift + I |
| Go to type declaration | Cmd + Shift + B |
Ctrl + Shift + B |
| Go to super-method/super-class | Cmd + U |
Ctrl + U |
| Go to previous/next method | Alt + Up/Down |
Alt + Up/Down |
| Move to code block end/start | Cmd + ]/[ |
Ctrl + ]/[ |
| Next highlighted error | F2 |
F2 |
| Previous highlighted error | Shift + F2 |
Shift + F2 |
| Edit/View source | F4 |
F4 |
Refactoring
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Copy/Move | F5/F6 |
F5/F6 |
| Safe Delete | Alt + Delete |
Alt + Delete |
| Rename | Shift + F6 |
Shift + F6 |
| Inline variable | Cmd + Alt + N |
Ctrl + Alt + N |
| Extract Method/Variable/Field/Constant | Cmd + Alt + M/V/F/C |
Ctrl + Alt + M/V/F/C |
| Refactor this (show all available refactorings) | Cmd + Alt + Shift + T |
Ctrl + Alt + Shift + T |
VCS/Local History
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| VCS quick popup | Alt + ``` |
Alt + ``` |
| Commit project to VCS | Cmd + K |
Ctrl + K |
| Update project from VCS | Cmd + T |
Ctrl + T |
| View recent changes | Alt + Shift + C |
Alt + Shift + C |
General
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Search everywhere | Shift x2 |
Shift x2 |
| Find Action | Cmd + Shift + A |
Ctrl + Shift + A |
| Open corresponding tool window | Alt + 1-9 |
Alt + 1-9 |
| Toggle full screen mode | Cmd + Alt + F11 |
Ctrl + Alt + F11 |
| Toggle maximize editor | Cmd + Shift + F12 |
Ctrl + Shift + F12 |
| Add to favorites | Alt + Shift + F |
Alt + Shift + F |
| Inspect current file with current profile | Alt + Shift + I |
Alt + Shift + I |
| Open Settings dialog | Cmd + Alt + S |
Ctrl + Alt + S |
| Switch between tabs and tool windows | Cmd + Tab |
Ctrl + Tab |
Live Templates/Snippets
| Action | Mac Shortcut | Win Shortcut |
|---|---|---|
| Insert live template | Cmd + J |
Ctrl + J |
| ’echo’ statement | eco |
eco |
| foreach(iterable_expr as $value) {…} | fore |
fore |
| foreach(iterable_expr as $key => $value) {…} | forek |
forek |
| ‘include’/‘include_once’ statement | inc/inco |
inc/inco |
| Private function | prif |
prif |
| Protected function | prof |
prof |
| Public function | pubf |
pubf |
| ‘require’/‘require_once’ statement | rqr/rqro |
rqr/rqro |