Complete PhpStorm keyboard shortcuts reference — 97 shortcuts across 7 categories. Quick reference cheat sheet for Windows & Linux.
PhpStorm shares the JetBrains default keymap with IntelliJ IDEA, so if you have read the IntelliJ page on this site you already know most of this table. What follows is written for the PHP workflow specifically — where the completion, navigation and run keys pay off in a Laravel or Symfony project — rather than repeating the general tour. The table is the Windows/Linux keymap; macOS uses Cmd.
| Shortcut | Action |
|---|---|
| Shift + Shift | Search Everywhere |
| Ctrl + Shift + A | Find Action |
| Alt + 1 | Open Tool Window |
| Ctrl + Alt + F11 | Toggle Full Screen |
| Ctrl + Shift + F12 | Toggle Maximizing Editor |
| Alt + Shift + F | Add to Favorites |
| Alt + Shift + I | Inspect Current File |
| Ctrl + Alt + S | Open Settings |
| Ctrl + Tab | Switcher |
| Shortcut | Action |
|---|---|
| Ctrl + Space | Basic Code Completion |
| Alt + Enter | Show Intention Actions |
| Ctrl + P | Parameter Info |
| Ctrl + Q | Quick Documentation |
| Alt + Insert | Generate Code |
| Ctrl + O | Override Methods |
| Ctrl + I | Implement Methods |
| Ctrl + Alt + T | Surround With |
| Ctrl + J | Insert Live Template |
| Ctrl + / | Line Comment |
| Ctrl + Shift + / | Block Comment |
| Ctrl + W | Extend Selection |
| Ctrl + Shift + W | Shrink Selection |
| Ctrl + Alt + L | Reformat Code |
| Ctrl + Alt + I | Auto-Indent Lines |
| Ctrl + D | Duplicate Line |
| Ctrl + Y | Delete Line |
| Ctrl + Shift + J | Smart Line Join |
| Ctrl + Enter | Smart Line Split |
| Shift + Enter | Start New Line |
| Ctrl + Shift + U | Toggle Case |
| Ctrl + Shift + ] | Select to Block End |
| Ctrl + Shift + [ | Select to Block Start |
| Ctrl + Delete | Delete to Word End |
| Ctrl + Backspace | Delete to Word Start |
| Ctrl + Numpad + | Expand Code Block |
| Ctrl + Numpad - | Collapse Code Block |
| Ctrl + Shift + V | Paste from History |
| Ctrl + F4 | Close Editor Tab |
| Shortcut | Action |
|---|---|
| Ctrl + N | Go to Class |
| Ctrl + Shift + N | Go to File |
| Ctrl + Alt + Shift + N | Go to Symbol |
| Ctrl + G | Go to Line |
| Alt + Right | Next Editor Tab |
| Alt + Left | Previous Editor Tab |
| Esc | Go to Editor |
| Ctrl + E | Recent Files |
| Ctrl + Alt + Left | Navigate Back |
| Ctrl + Alt + Right | Navigate Forward |
| Ctrl + Shift + Backspace | Last Edit Location |
| Alt + F1 | Select In |
| Ctrl + B | Go to Declaration |
| Ctrl + Alt + B | Go to Implementation |
| Ctrl + Shift + I | Quick Definition |
| Ctrl + Shift + B | Go to Type Declaration |
| Ctrl + U | Go to Super Method |
| Alt + Up | Previous Method |
| Alt + Down | Next Method |
| Ctrl + ] | Move to Block End |
| Ctrl + [ | Move to Block Start |
| F2 | Next Highlighted Error |
| Shift + F2 | Previous Highlighted Error |
| F4 | Edit Source |
| Shortcut | Action |
|---|---|
| Ctrl + F | Find |
| Ctrl + R | Replace |
| F3 | Find Next |
| Shift + F3 | Find Previous |
| Ctrl + Shift + F | Find in Path |
| Ctrl + Shift + R | Replace in Path |
| Alt + F7 | Find Usages |
| Ctrl + F7 | Find Usages in File |
| Ctrl + Shift + F7 | Highlight Usages in File |
| Ctrl + Alt + F7 | Show Usages |
| Shortcut | Action |
|---|---|
| Ctrl + Alt + Shift + T | Refactor This |
| F5 | Copy |
| F6 | Move |
| Alt + Delete | Safe Delete |
| Shift + F6 | Rename |
| Ctrl + Alt + N | Inline Variable |
| Ctrl + Alt + M | Extract Method |
| Ctrl + Alt + V | Extract Variable |
| Ctrl + Alt + F | Extract Field |
| Ctrl + Alt + C | Extract Constant |
| Shortcut | Action |
|---|---|
| Shift + F10 | Run |
| Shift + F9 | Debug |
| Ctrl + Shift + F10 | Run Context Configuration |
| Ctrl + Shift + X | Run Command Line |
| F8 | Step Over |
| F7 | Step Into |
| Shift + F8 | Step Out |
| Alt + F8 | Evaluate Expression |
| F9 | Resume Program |
| Ctrl + F8 | Toggle Breakpoint |
| Ctrl + Shift + F8 | View Breakpoints |
| Shortcut | Action |
|---|---|
| Alt + ` | VCS Operations Popup |
| Ctrl + K | Commit |
| Ctrl + T | Update Project |
| Alt + Shift + C | View Recent Changes |
Ctrl + N opens a class by name — including vendor classes under Composer — while a function or method anywhere in the project is one Ctrl + Alt + Shift + N away. Pressing Ctrl + B on a method call goes to its declaration, and on a Laravel facade or a route name it resolves through the framework plugin. Concrete classes behind an interface are listed with Ctrl + Alt + B, which is how you find the concrete class bound in a container. Ctrl + Shift + I shows a quick definition popup without leaving the file, and Ctrl + Q the PHPDoc.
Alt + Insert generates constructors, getters and setters, and PHPDoc blocks; Ctrl + O overrides parent methods and Ctrl + I implements interface methods with correct signatures and return types. Ctrl + J inserts a live template — fore for a foreach, pubf for a public function — and Ctrl + Alt + T surrounds a selection with if, try/catch or a closure. Alt + Enter offers the fixes the inspections propose: add a missing use statement, declare a type, extract a variable.
The current configuration runs on Shift + F10 and debugs on Shift + F9, which for PHP is usually a PHPUnit test or a script with Xdebug listening. a single test method under the cursor runs directly with Ctrl + Shift + F10 without creating a configuration. The step keys are F8, F7, Shift + F8 and F9 to resume; Alt + F8 evaluates an expression against the paused request. Alt + ` opens the VCS popup, Ctrl + K commits and Ctrl + T pulls (Update Project).
Yes. PhpStorm uses the JetBrains default keymap; the PHP-specific parts are what the keys operate on, not the keys themselves.
Put the cursor in the test method and press Ctrl + Shift + F10. PhpStorm creates and runs a configuration for that method.
Press Alt + Enter on the unresolved class name and choose Import class. Ctrl + Alt + O optimises existing imports.
Ctrl + Alt + B on the interface name lists implementations; Alt + F7 finds usages.
Open your assistant with this page preloaded as the source — great for follow-up questions like "which of these work in other apps?"