PhpStorm

What’s new in PhpStorm 8?



PhpStorm 8 brings yet even more emerging technologies to help you enjoy web development with deepest ever code understanding and advanced support for remote environments.


Take a quick tour of PhpStorm 8
X

PHP Language Support

Power of language injections

Language injections into PHP literals have been completely re-worked to support complex expressions, including a possibility to substitute dynamic parts with sensible values. This is particularly important for working with SQL queries in your project, and yields a significant productivity boost when writing or testing database queries. Read more about language injections enhancements »

PHP Language Support


Keep up with the PHP evolution

PHP 5.6

The latest PHP 5.6 is fully supported including exponentiation, use const, use function, constant expression, variadic functions, argument unpacking, and more.

With all the language features in place, there is no reason not to update your project to the latest PHP version.

Read more about PHP 5.6 support »


Follow PSR-0/PSR-4 standards on namespace roots

Following PSR-0/PSR-4 coding standards is easy with PhpStorm. It brings Source & Test directories for PHP with matching for project structure and namespaces (as in PSR-0); can detect PSR-0 structure on new project, or maintain structure on new class creation and refactorings; and provides many related inspections.



Broad changes to feel the difference

With every new version PhpStorm becomes more refined in all its subsystems. This time we introduce new intentions and inspections, formatting, type inference, and other major improvements, including type inference based on return type of ArrayAccess/Iterator, Markdown support in PHPDoc blocks, and understanding of uniform multi-level arrays.





Frameworks

Blade templates

Laravel’s trending Blade template engine is now fully supported, including:

  • Highlighting of Blade syntax in template files
  • Code completion for directives
  • Laravel
  • Variable introduction for @for and @foreach
  • Blade-specific navigation
  • Find usages for templates
  • Custom Blade directives
Read more about Blade support »
Blade templates


WordPress

WordPress development using PhpStorm

PhpStorm comes with WordPress Plugin providing many WordPress-specific features, such as:

  • WordPress integration in PhpStorm for new plugins (with plugin skeleton) and existing projects
  • Development environment configuration for WordPress
  • WordPress development using PhpStorm
  • WordPress code style
  • Support for hooks (including completion for registration functions parameters, navigation from hook registration functions to hook invocation, callbacks from hook registration, and other hooks-related features)
  • Search on WordPress.org right from the editor
  • Integration with WP-CLI, the WordPress command line tool

Read more in full tutorial on WordPress development using PhpStorm »



Drupal

Drupal 8 is around the corner

With Drupal 8 to be released soon, PhpStorm already comes with full support for the upcoming version. Support similar to Drupal 6/7 (auto-configuration, hooks, navigation, etc.) is provided, and Drupal Symfony2 Bridge plugin brings lots of additional Symfony2-specific features to take advantage of.
Read more in our Drupal-related tutorial »


Other frameworks

All the major PHP frameworks are supported by PhpStorm, so make sure to try the IDE for the framework of your choice. Third-party framework-specific plugins are available in our repository, including Symfony2, Laravel, Magento, CakePHP, and many others.





Behat

BDD for PHP made easy with Behat

Behavior-driven development is now possible in PhpStorm with Behat BDD framework support. Go ahead and write human-readable stories that describe the behavior of your application.

Support for Behat features:

  • Behat installation and configuration helpers
  • Run Configuration for Behat (similar to PHPUnit’s)
  • Behat Intellisense (Resolve from step in Gherkin file to Context file, Find Usages from Context file to usages in Gherkin files, Keyword and step completion, and Generation for undefined steps)
BDD for PHP made easy with Behat

Read more in our tutorial on Behat »





Remote PHP interpreters

Using a remote PHP interpreter instead of a local one lets you run your application and PHP-based tools on a production-like environment, be it the real production server or a virtualized one created with Vagrant. This way you can make sure there will be no inconsistencies when the application is finally deployed to production.

As soon as a remote PHP interpreter is configured (using SSH credentials, Vagrant or deployment configuration), you can use it to run/debug your application and run testing tools (such as PHPUnit and Behat) remotely. PhpStorm will treat a remote interpreter similarly to a local one.

Read more about PHP remote interpreters »

PHP remote interpreters





Debugging

The debugger now provides array/object value path in the debugger tool window, as well as the ability to skip certain functions with PHP debug Step Into.

Testing

Latest PHPUnit 4 is now supported for both local and remote runs. We have completely revised the concept of PHPUnit on Server, to provide you with a smooth unit testing experience regardless of your environment type.

Behat

Zend Server Z-Ray

With brand-new Z-Ray coming with latest release of Zend Server, developers can immediately understand the impact of their code changes, enabling them to both improve quality and solve issues long before their code reaches production.

As a part of technology partnership between Zend and JetBrains, PHP debugging and profiling sessions can be activated from Z-Ray and Zend Server interface to take action in PhpStorm.

Read more in our tutorial »






Meet trending web technologies

Advanced AngularJS support

AngularJS

Use PhpStorm 8’s advanced support for the popular AngularJS framework to facilitate your development process with AngularJS.

Enjoy intelligent code completion for directives, controller and application names, and code insights for data bindings inside of curly-brace expressions. Project template, AngularJS-specific navigation and documentation for directives right from the editor are also in place.



Spy-js, a JavaScript and Node.js tracing tool

Spy-js, a JavaScript and Node.js tracing tool

With spy-js you can see the full list of events that triggered code execution, then dig into the stack trace for an event and explore the highlighted trace in the source code. Spy-js works for websites opened in any browsers on your machine or mobile device, as well as for server-side JavaScript code.

Use it to debug and profile your JavaScript or Node.js code and effectively identify any possible bottlenecks.

Read more about spy-js »



Grunt, a JavaScript task runner

Grunt

Grunt can automate a lot of tasks in our development workflow.

Meet the Grunt console: browse through the list of Grunt tasks defined in your project, and execute any task or group of tasks by double-clicking it.

Read more about Grunt in PhpStorm »


Grunt — a JavaScript task runner

PhoneGap/Cordova integration

PhoneGap/Cordova integration

Brand-new PhoneGap/Cordova integration is available via a plugin to execute run and emulate commands with the new PhoneGap/Cordova Run configuration.

This integration also features a new project generator for PhoneGap and Cordova, and a plugin manager that helps you install plugins from the Cordova plugin registry or any other repository. The plugin can also facilitate your mobile development with Ionic framework.



Other web development features include:

  • Integration for Bower, a package manager for the web
  • Postfix templates for JavaScript
  • New Live Console in JavaScript and Node.js debugger
  • Support for CucumberJS test framework
  • Live Edit workflow enhancements, and Live Edit for Node.js
  • Gulp.js build system support
  • Improvements in the support of JavaScript modules( RequireJS, AMD and EcmaScript 6 Harmony modules), up-to-date support for LESS 1.7, Sass 3.4, Stylus 0.39, and much more.





IDE Improvements

All the latest top-notch features of IntelliJ Platform have made it to PhpStorm 8 as well. Let’s have a look at the most important ones.

Multiple Carets and Selections

With Multiple Carets and Selections, you can work with multiple cursors in one file simultaneously. Just press and hold Alt and use the mouse click to select the locations where the caret is desired (there are many more actions available though).

Smart autocompletion and live templates work with multiple carets and selections as well, taking your productivity beyond the boundaries.



Work with individual files without creating a project

Quick changes in non-project files require quick solutions. While it was always possible to open any file in the editor when working on some project, there was one thing missing: opening a single file without creating an entire project.

With PhpStorm 8, quick changes in a single file are now possible: just open it with Open action from the welcome screen. The experience is familiar, with code highlighting, inspections, basic code completion, and even debugging and deployment.

Read more about quick edits »

Working with single file without creating a project

More useful features inherited from IntelliJ Platform include:

  • Editorconfig support (editor-agnostic code style sharing)
  • New Code Cleanup action
  • Improved Find in path
  • Bundled Scratch plugin to quickly open temporary text editor tab
  • Copy/paste selected code as HTML/RTF out-of-the-box
  • Smart backspace
  • Excluded folders are now visible in Project View and can be added to VCS
  • ... and many others


Get PhpStorm 8 Now!

PhpStorm 7.0 & 7.1
  • PHP 5.5 support
  • Vagrant
  • Improved PHP syntax coloring
  • SSH console & remote tools, terminal
  • Support for Drupal & PHP frameworks
  • Google App Engine for PHP
  • Debugger configuration validation
PhpStorm 6.0
  • Composer support
  • Code (re)arranger
  • New refactorings, smarter namespaces handling
  • New Database Schema Editor
  • Built-in REST client, Emmet for HTML/CSS
  • File watchers, debugging with source maps
  • Fresh IDE look and feel & Darcula
PhpStorm 5.0
  • Advanced type inference engine
  • PHP code quality improvements & code styles
  • MVC view for Symfony2 & Yii frameworks
  • PHAR-packaged code recognition
  • SQL and Databases support improvements
  • Live HTML/CSS/JS Editing Preview
  • Improved HTML, JS, CSS, LESS, Sass/SCSS support