As a software development company we are primarily focused on web based applications such as our Social Intranet Solution. For the last five years we have used Eclipse PDT as our favorite IDE. We have always been happy with the features it provided and did not have the time to do an intense investigation on other IDEs. A few months ago, we had some free time and decided to take a look at some other IDEs and compare them in detail. We picked PHPStorm, ZendStudio and Eclipse PDT to be compared in detail. And here are the reasons we finally chose PHPStorm over ZendStudio and Eclipse PDT:
Sure, we got debugging running with either XDebug or ZendDebugger with both Eclipse PDT and ZendStudio. But debugging, inspecting variables and navigating through the code can be very painful with Eclipse and PHP. For sure, you can configure Eclipse to work exactly as you want it to, but you have to know it good and do a lot of configuration work.
PHPStorm comes with the easiest debugging solution for our use case: The Listen for debug connection button. Just click it and start a debug session in your browser (This usually happens by appending ?XDEBUG_SESSION_START=anyidentifier to your URL, we implemented a "debug link" in our application to do that with a mouse click. Two clicks and debugging works, no matter which project or path on the web server. No configuration must be done in any project.
With Eclipse PDT it is not possible to run PHPUnit tests from within the IDE I think. At least I could not find any solution for that. With ZendStudio and PHPStorm we managed to get it up and running, even with our unit testing infrastructure which requires a complex bootstrap routine. Now we can run unit tests from within the IDE and don't have to use our custom implemented web GUI for that.
OK, let's be honest. We all don't want to pay more than we have to. That's one of the reasons we stuck to Eclipse PDT for such a long time. But as our company grew, we realized that some bucks spent on a good piece of software can save you thousands of bucks later on.
Eclipse PDT: free
ZendStudio: 299€ (including minor updates)
PHPStorm: 168€ (including one year of updates)
Since we expect a major update for ZendStudio all 1-2 years the pricing of PHPStorm vs. ZendStudio is nearly the same. If one of them wins the battle it's not about the price.
The most important reason we choose PHPStorm over ZendStudio and Eclipse PDT is performance. We use Linux (Ubuntu) on all workstations and Eclipse PDT has always been very slow. When working on the code everything is fine (except the slow code suggestions). But when you want to reload a project, refresh the source or even work with your Bazaar plugin installed Eclipse can really make you go crazy. Lags occur every time you refresh, open new files or even when you just right click with your mouse somewhere in the source or the file tree.
PHPStorm really is like a "storm" when it comes to performance. You never wait for something, UI is very fast and filesystem freshes automatically after a few seconds.
There are three reasons to choose PHPStorm over Eclipse PDT and two of them to choose PHPStorm over ZendStudio:
- Unit Testing