PhpStorm 2019.1 Help

Auto Import

File | Settings | Editor | General | Auto Import for Windows and Linux
PhpStorm | Preferences | Editor | General | Auto Import for macOS
Ctrl+Alt+S the Settings/Preferences icon


XML

Show import popup

Automatically display an import popup dialog when typing the name of an unbound namespace.

TypeScript/JavaScript

Add ES6 imports on code completion

  • If this checkbox is selected, PhpStorm automatically inserts an import statement in JavaScript code when you complete a symbol exported using ES6 exports in another project file:

  • When the checkbox is cleared, on pressing Alt+Enter PhpStorm shows a popup that suggests to import the symbol:

    ws es6 autoimport off

  • Completion and auto-import also work for React components, including stateless components. PhpStorm properly detects them, provides code completion, and adds import statements automatically:

Add TypeScript imports automatically

Select this checkbox if you want PhpStorm to generate import statements in TypeScript code. Use the checkboxes below to choose when import generation will be invoked.

  • On code completion: If this checkbox is selected, PhpStorm automatically inserts an import statement in TypeScript code when you complete a symbol exported in another project file.

  • With import popup: If this checkbox is selected, PhpStorm shows a tooltip with an import suggestion when you place the cursor at an unresolved symbol that can be imported. When the checkbox is cleared, you can invoke import generation only be pressing Alt+Enter.

  • Unambiguous imports on the fly: With this checkbox selected, PhpStorm adds import statements when you type your code or paste a fragment with a symbol that is not yet imported if there is only one source to import the symbol from.

PHP

Insert imports on paste

Select how PhpStorm should process references to missing classes and methods in pasted blocks of code:

  • All: import statements will be added automatically for all missing classes and methods found in pasted blocks of code.

  • Ask: PhpStorm will prompt you to select which classes and methods you want to import.

    If the pasted class is already referenced in the target code via an alias, PhpStorm will prompt you to reuse this alias instead of creating a new import statement.

    the Select Classes To Import dialog: reuse existing alias
  • None: no import statements will be added, you won't be asked about unresolved references.

Note that adding imports on paste is only possible if the copied element is properly resolved in code (that is, not highlighted by the Undefined class or Undefined method inspections), and project indexing is finished.

Enable auto-import in file scope

Select this checkbox to have PhpStorm automatically import PHP namespaces, add use statements, and complete short class names on the fly, when you are typing in a class or file that does not belong to any specific namespace. By default, the checkbox is cleared.

Enable auto-import in namespace scope

Select this checkbox to have PhpStorm automatically import PHP namespaces, add use statements, and complete short class names on the fly when you are typing in a class or file that belongs to a certain namespace. The checkbox is selected by default.

Treat symbols from the global space

In this area, configure auto-import from the global namespace separately for classes, functions, and constants.

  • Prefer FQN: If selected, PhpStorm automatically inserts the fully-qualified name of a symbol from the global namespace, prepended with a backslash, for example:

    namespace A; $myException = new \Exception(); $a = \strlen("Test"); echo \PHP_EOL;
  • Prefer Import: If selected, PhpStorm automatically adds use statements for symbols from the global namespace if this doesn’t result in a conflict, for example:

    namespace A; use Exception; use const PHP_EOL; use function strlen; $myException = new Exception(); $a = strlen("Test"); echo PHP_EOL;
  • Prefer Fallback: If selected, PhpStorm neither inserts a fully-qualified name of a function or a constant, nor imports them by means of the use statement. The fallback global functions or constants are preferred in this case, for example:

    namespace A; use Exception; $myException = new Exception(); $a = strlen("Test"); echo PHP_EOL;
Last modified: 8 July 2019