Formatting Changes in PhpStorm 10

Gary Hockin

Recent versions of PhpStorm have bundled several interesting formatting changes. Let’s take a look at what formatting changes have been seen in PhpStorm 9 & 10.

Case Statement Formatting

An option for controlling the indentation of the `break` statement has been added. The standard indentation is for the `break` statement to appear on the same line as the code:

Format Break Default

Using the Code Style settings under the Editor tab, then navigating to Wrapping and Braces -> ‘switch’ statement, you can uncheck the Indent ‘break’ from ‘case’ option to get the alternative formatting.

formatting break setting

Now, the `break` statement will appear with the same indentation as the corresponding `case` statement.

Formatting Break Alternative

Blank Lines Around Code

In PhpStorm 8, the option to set a minimum number of blank lines around fields was introduced. This led to some consternation as it was adding blank lines around properties and methods, which was causing undesired blank lines between the first/last property, class or method. Ensuring a minimum blank line of 1 in PhpStorm 8 would result in the following formatting:

formatting blank v8

In order to allow the Reformat Code tool to reformat the code exactly to the user’s needs, in PhpStorm 9 the Minimum Blank Lines Around options have been changed, and a new option called After Class Header was added.

formatting line settings

Now, under the Minimum Blank Lines options (which can be found under Settings -> Code Style -> PHP -> Blank Lines), the Blank Lines Around option only affects properties, constants or method blank lines that are not adjacent to the start or end of a class. To set the minimum blank lines before and after class definition braces, use the After Class Header option.

Trailing Commas in Arrays

Another much sought-after improvement is the ability to tell the code formatter to add trailing commas when reformatting arrays. You can turn this behavior on or off by using the Add a comma after last element in multiline array option under the Other tab.

formatting array comma

Auto-changing Case on Completion

Another brand new introduction in PhpStorm, the formatter will now change the case of `true`, `false` or `null` to the case you’ve set in the code style setting, whenever you select them using the code completion popup.

formatting case change

To see these options in the code completion popup, make sure you’ve got case sensitivity in code completion turned off, by selecting None in the Case sensitive completion option.

formatting case sensitive

Other Minor Improvements

There have also been some more minor improvements. The formatter now adheres to blank line settings even if you’re using some of the alternative PHP syntaxes. There were also a number of bug-fixes in and around the formatting tool, and some new settings and tweaks were added, like the ability to keep comments next to the return statement in functions/methods.

– Gary and the PhpStorm Team

JetBrains
The Drive to Develop

Subscribe

Subscribe for updates