PhpStorm is built on IntelliJ IDEA, which is written in Java. Users can extend the IDE by installing plugins created for the IntelliJ Platform or write their own plugins.

All features available in WebStorm are included in PhpStorm,[4] which adds support for PHP and databases.[5] WebStorm ships with pre-installed JavaScript plugins (such as for Node.js), which are available for PhpStorm as well at no cost.[6]

PHP 5.3, 5.4, 5.5 & 5.6 support, including generators, coroutines, the finally keyword, list in foreach, using empty() on the result of function calls and other expressions, traits, closures, class member access on instantiation, short array syntax, array dereferencing on function call, binary literals, expressions in static calls, etc. It can be used for both modern and legacy PHP-based projects.

Easy-to-configure visual debugger (Xdebug, Zend Debugger) for inspecting context-relevant local variables and user-defined watches, including arrays and complex objects, and editing values on the fly.

Scripts can be profiled right from PhpStorm with either XDebug or Zend Debugger. An aggregated report is available, and the user can jump from the execution statistics directly to the function in PHP code.

PHPUnit tests can be developed in PhpStorm and run instantly from a directory, file or class using the context menu options) with code coverage.