Edit: the giveaway is closed and the winners have been notified. Thanks for participating!
This week marks the release of PhpStorm 8. It’s no secret PhpStorm has been a long personal favorite of mine after having won me over from Zend Studio, Netbeans and Sublime Text, and we’ve covered the tool extensively before, most notably with the shortcuts guide by yours truly. By following the EAPs, we also taken a look at the new features in PhpStorm 8 before it even came out. Now that the day has finally come, let’s see what else is included, and finish up with a giveaway of free licenses.
New Features in PhpStorm 8
Apart from the previously covered support for Drupal 8, multiple cursors, PHPUnit 4, remote interpreters, Markdown in PHPDoc, PSR4 inspections, ability to open remote URLs from the files referencing them and, of course, Behat support, several new improvements were made in the time since aforementioned post was published.
Laravel’s template engine, Blade, is finally supported. Like some readers pointed out in the last “new features” post, Blade support was long overdue and Laravel’s popularity has been blowing up while PhpStorm seemed to be ignoring the framework. Far be it from me suggesting an IDE should have built-in support for every framework out there (where would we be now, bloat-wise, had they jumped on board with CodeIgniter or CakePHP and built them into the core?) but Laravel did kind of become the de-facto newbie framework (as in, most welcoming to newbies – don’t get upset!) and making its template engine even easier to use with out of the box syntax highlights, navigation assists and autocompletion will go a long way in making sure the newcomers stick around and don’t feel intimidated when they meet a templating engine for the first time.
You could always easily write SQL queries in your PHP code in PhpStorm, and it usually recognized everything you wanted to accomplish rather well. Adding in dynamic values, however, didn’t always go too smoothly. In an environment in which you configure your editor to be very strict about standards and code cleanliness, a throng of yellow warnings in the right gutter can really annoy a person.
Language Injection has now been completely revamped to better support detecting languages within languages. Go ahead and read the post – you’ll be blown away by the smooth workflow that is now possible.
Apart from Blade, actual framework support has been drastically enhanced too. This functionality is not built-in as it would not make sense to bloat the IDE that much, but they are all available through plugins. Just look at that list of offered frameworks!
Behat Support Upgraded
In addition to pure intellisense for autocompletion of Behat syntax, the support for this BDD supertool has been further upgraded. You now have a full dashboard for viewing succeeding and failing tests rather than just terminal output, detailed step by step reports, run configurations you can define for various scenarios and conditions, and much, much more. Expect some intense Behat coverage on SitePoint soon, and in the meanwhile, check out their in-depth tutorial.
I mentioned this already in my monthly news recap, but it deserves another mention. We looked at Z-Ray briefly in the Zend Server article from a while back, but there was no indication of them ever including it in PhpStorm which is, for all intents and purposes, a competing product (Zend Studio vs. PhpStorm, a clash of the titans if there ever was one).
The integration of Z-Ray – by far the most advanced PHP debugging tool ever created to date – in PhpStorm makes for a perfect blend of two of the most powerful PHP development tools currently available out there, and instantly transforms you into a significantly more capable programmer (if not developer).
In addition to this, the teamup resulted in a discount code for Zend Server, too, so you can get it 20% cheaper at http://zend.com/server if you use the promo code PHPSTORM.
If you’d like to know more about Z-Ray and its integration with PhpStorm, see here, and don’t forget to sign up for the webinar for a detailed course on how to get the most out of it, scheduled for September 23rd.
If you’ve been wanting to get into mobile app development with Apache Cordova, PhpStorm now supports this, too. It needs to be added in via a plugin – PhpStorm tries to be light by default – but once done, you have the full power of a “works-on-every-platform-deploys-to-every-platform” IDE at your fingertips.
To quote directly from their site:
“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.”
If this kind of all-encompassing development power doesn’t excite you, you should re-evaluate your love of coding.
Built-in Scratch and Single File Edits
The Scratch plugin has long been used to give the IntelliJ based IDEs the ability to create and edit “scratch” files – throwaway files that belong neither here nor there. You could use them for single-file editing, as intermediary clipboards, as todo lists, drafts, and more. Basically, a non-project-bound text editor inside PhpStorm.
Also, PhpStorm notoriously never could edit individual files without creating a whole project for them. This, and the ability to open multiple projects in the same window are areas in which Netbeans has always beaten PhpStorm. With version 8, two out of three of the aforementioned problems are now solved.
The scratch plugin is now built-in, so you can write your scratch files at will. Furthermore, you can use PhpStorm to open and edit an individual file, without opening an entire project for it.
As a celebratory gesture of the v8 release, Jetbrains has graciously offered to give away three personal licenses to our readers. All you need to do is either comment on this article with your favorite new addition to PhpStorm or your opinion about the IDE (objectively, no need to praise it blankly), or tweet this article to a follower base of at least 50 while using the #phpstorm8sp hashtag, and you’re in the draw. In exactly two weeks, I’ll draw the winners at random.
Are you using PhpStorm? If not, why? If you are, how do you like it, and what would you change, if anything? Which of these new features has the biggest draw for you?