PhpStorm 4.0: Do It Right From The First Time
PHP 5.4 Language Features Support
PHP 5.4 is now fully supported, including traits and all the new syntax improvements: class member access on instantiation, short array syntax, array dereferencing on function call, binary literals, expressions in static calls, etc.:
Code Coverage for PHPUnit
We continue developing integration with tools essential for any developer who cares about the quality of their code. Code Coverage for PHPUnit marks covered and uncovered lines visually right in the editor and shows how much of your code is covered with tests.
Drupal Coding Style Support
PhpStorm 4.0 contains a bundled predefined coding style for the popular Drupal content management platform. Currently just reformatting your code in PhpStorm removes 99% of errors reported by Drupal coder-review and helps your code meet Drupal coding standards.
ECMAScript Harmony Support
For those who prefer to stay one step ahead, WebStorm presents experimental support of a new ongoing ECMAScript version code-named Harmony. To try out the new features, set ECMAScript Harmony to be the JavaScript language version in the IDE settings.
Note: each JavaScript engine implementation adds some nice features that others don't have. When you use a language feature that isn't supported by the currently selected JavaScript version, WebStorm will notify you and suggest a Quick-Fix:
Check Your Code with PHP Code Sniffer
PhpStorm 4.0 allows you to check your code on the fly with PHP Code Sniffer (phpcs), just by opening a PHP file. The check is triggered every time you change something in the file, so it's extremely easy to fix problems reported by PHP Code Sniffer.
New PHP Code Inspections
- Duplicate array keys
- Void function result used
- Nested vs outer 'foreach' variables conflict
- Usage of silence operator
- Missing 'break' statement
- and more...
Smarter JavaScript Completion
More relevant suggestions now appear at the top of the list in many cases.
- Suggested names are ordered by their definition scope nesting, i.e. global variables are placed at the bottom of the list.
- Object members are ordered by class inheritance.
- If a local variable exists with the same name as the parameter of the called function, that variable is considered the most relevant.
Custom Code Folding Regions
This feature gives you a possibility to define your own code-folding regions with special line comments both in Visual Studio and NetBeans style.
Press the Same Shortcut Again!
Sometimes you invoke an action and you don't get what you wanted immediately. In such cases it may help to invoke the action again by pressing the same shortcut. This will show additional options like the one below: