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 »
Keep up with the PHP evolution
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.
Laravel’s trending Blade template engine is now fully supported, including:
- Highlighting of Blade syntax in template files
- Code completion for directives
- Variable introduction for @for and @foreach
- Blade-specific navigation
- Find usages for templates
- Custom Blade directives
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 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
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 »
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.
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)
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.
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.
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.
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.
Meet trending web technologies
Advanced AngularJS support
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.
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.
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
- Support for CucumberJS test framework
- Live Edit workflow enhancements, and Live Edit for Node.js
- Gulp.js build system support
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.
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
Get PhpStorm 8 Now!
- PHP 5.5 support
- Improved PHP syntax coloring
- SSH console & remote tools, terminal
- Support for Drupal & PHP frameworks
- Google App Engine for PHP
- Debugger configuration validation
- 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
- 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