PhpStorm: Setup

Here are some hints and examples, what you can do to setup PhpStorm.

Conventions on this page

If you need to select something from the menu in PhpStorm, menu items are displayed like this: File > Settings > ....

General setup

File > Settings > Languages & Frameworks > PHP

(ctrl + alt + s opens File > Settings)

  • PHP Language Level: choose appropriate version
  • CLI Interpreter: choose appropriate version
Setup PhpStorm PHP settings

Coding Guidelines

Make sure your IDE is setup properly to comply with the Coding Guidelines for TYPO3 (CGL).

EditorConfig

Please note that there is an .editorconfig file in the TYPO3 core repository. See https://editorconfig.org/ for more information. Use the EditorConfig plugin for PhpStorm.

If you use the .editorconfig file (which is included in the TYPO3 core), some standard formatting rules are already setup automatically (e.g. indent with 4 spaces for PHP files).

The rules defined in .editorconfig are very minimal and it is suggested to see the TYPO3 Coding Guidelines for more information and toolchain configuration. Please read PhpStorm documentation on using PHP CS Fixer for information on how to use the provided config.php within PhpStorm.

For a quick start, you can use the following PhpStorm code style to comply with PSR-12, which is the most recent recommendation at the time of this writing that PhpStorm provides a preset for:

PHP files

Set Predefined Style in PhpStorm: File > Settings > Editor > Code Style > PHP > Set From > Predefined Style

Choose PSR-12.

In order to test this, use Code: Reformat Code to reformat a PHP file.

More information

You can find more information on the Coding Guidelines section in the Appendix.

Plugins for PhpStorm

Here are some plugins, you might use when developing TYPO3. DynamicReturnTypePlugin and Php Inspections are not TYPO3 specific, but will show possible errors and are strongly recommended when developing for the TYPO3 core.

Install plugins in PhpStorm

  1. Open Settings: File > Settings (ctrl + alt + s)
  2. Select Plugins
  3. Start typing name of plugin and select a match
  4. Click on Install.

Optional Plugins

* `Gerrit plugin
<https://plugins.jetbrains.com/plugin/7272-gerrit>`__
* `TYPO3 CMS Plugin
<https://plugins.jetbrains.com/plugin/9496-typo3-cms-plugin>`__
* `TYPO3 XLIFF Utility
<https://plugins.jetbrains.com/plugin/8098-typo3-xliff-utility>`__

Setting up PhpStorm for the Testing Framework

Optional

First setup the Testing Framework. Replace <YOUR_WEBROOT> with your path to the web directory. You must use absolute paths for this.

Setup Test Frameworks in PhpStorm: File > Settings > Languages & Frameworks > PHP: Test Frameworks:

(ctrl + alt + s opens File > Settings)

  • Use composer autoloader
  • Path to script: <YOUR_WEBROOT>/vendor/autoload.php
  • Test runner: Defaut configuration file: <YOUR_WEBROOT>/Build/phpunit/UnitTests.xml
  • Test Runner: Default bootstrap file: <YOUR_WEBROOT>/Build/phpunit/UnitTestsBootstrap.php
Setup Testing Framework

If this is setup correctly, it will be possible to run your unit tests from within the IDE.

Other Resources