PHP IDEs: Eclipse, Zend and Komodo

I have finally gotten around to seriously testing out some different IDE (Integrated Development Environment) for my PHP coding. I currently use jEdit as an all-around editor and I love it. It has PHP parsing (but no fancy autocomplete stuff), FTP, project management, snippets and some really good XML plugins but the big hangup I have with it is that, for some reason I can not discern, it is totally jacked up on my Dell laptop when no AC power is plugged in. It works fine otherwise but I do a lot of coding on the train to and from work and I can't use jEdit on battery power because it ends up running slower than molassas uphill in winter. Total bummer.

So, I am currently evaluating Zend Studio 5.2.0, Komodo 3.5 and Eclipse. I need something that is cross-platform and will run reasonably fast on all of my machines. I use Ubuntu Linux at home and WinXP at work and I'm considering getting an Intel MacBook at some point and triple-booting it. ( I realize Java apps are not the fastest but they have the great plus of being cross-platform so I am only dealing with one interface on multiple meachines, hence "reasonably fast".) Other than that I want something that knows PHP, XHTML and CSS and has FTP support. I don't have huge technical requirements and so most of the comparison is based on nit-picky likes and dislikes.

So far Eclipse 3.2 is the front runner mainly because it meets my basic requirements and is free. It isn't my favorite environment but I am getting used to it. I find the Eclipse site very confusing and it took a while to understand the basic concept of the main framework and finding the components needed to do what I particularly want - it is just not a model I have used before. There are two plugins that cover what I need that are still really betas and I think they will only get better as things move forward. I am using the PHP IDE plugin from Zend and the Aptana plugin which is specifically for HTML, CSS and Javascript. The main things about Eclipse that bug me are 1) no word wrap (!?) 2) every new file I create has to be in a project folder. Really annoying since I don't always work in "projects" nor do I want to stop and create one when I'm in the middle of coding. 3) the FTP is not live editing. You have to create a local project and sync your files. Not huge but certainly not as nice as connect, save the file, refresh browser and done. On the other hand it does actually do diffs and syncing even for FTP (and SFTP), as well as standard CVS and SVN. One thing I like about Eclipse is the Tasks list that finds your (configurable) task tags like TODO and FIXME in the code and creates a list in a view for you.

Both Zend Suite and Komodo are both $300. Not cheap. For $300 I want a back massage too. Yes, there are cheaper versions of each but Komodo's cheapy ($30) is not for business use and Zend's cheapy ($100) doesn't have FTP (or SVN/CVS for that matter). Now, my daytime employer is more than willing to buy me the tools I need to do my work but we are a small department and we have one pie to buy things from so I try to not be greedy, especially if I don't really need it. Zend and Komodo meet my requirements and are both capable IDEs for what I want to do. So for $300 here's what I like and don't like about them. Please note that I have not "learned" these IDEs. This is all first impression. I am sure they can do lots of things the way I want but a large part of this is finding out which is most intuitive and comfortable for me from the get-go. Knowing that I have coded with jEdit for a long time and have gotten used to that interface is important as well since features that work like they do in jEdit (as I have customized it) will be more "intuitive" for me.

Zend is purdier and I prefer the pane expand/collapse over Komodo's (it is actually very much like jEdit's). I also prefer Zend for its file browser and the fact that I can have Zend automatically reconnect and add my FTP servers to it. Some weak points for Zend are that the editor tabs are on the bottom and not movable (I keep looking to the top to see which files are open and then feel lost and have to look down) whereas Komodo has them at the top where I'm used to. Komodo also starts out of the box with Tutorials to help get used to it. I couldn't get the debugger to work though even though I went through the little wizard to set up my local PHP for it. The local debugger in Zend worked with no issues for me. I don't know boo about debuggers, never having used one before so Zend really wins here. One thing I like about Komodo is when creating a new file it will ask me what kind of file template I want to use. Its not a huge deal for php files but very nice for XHTML. I also really like the toolbox pane that lets me keep my own selection of snippets and templates in easy reach (which is very much like and easier to use than the Clipper in jEdit).

If I could combine the things I like about them both, I might be willing to pay $300. I'm still playing with them during the trial period so we'll see if either of them becomes so much more useful than Eclipse that I'm willing to pony up the cash.

Nice to see a good review of

Nice to see a good review of different ide's. Komodo 4 beta 1 (not out yet, we're still in alpha) will auto configure PHP debugging without user intervention in most cases. That can be a little tricky sometimes since there are soo many ways to build/configure PHP, and we use the PHP on your system. There are also lots of very cool new features in K4, hope you check that out during your evaluation.

Sorry if this is not really

Sorry if this is not really related to your post topic, but you mentioned that you use jedit? I also like it because of the code coloring and all the useful plug ins you can get for it, but the problem I'm having with it is when I press "ctrl+f" (find) it gives me some error, have you ever experienced that with your jedit, and if so, do you know how to fix it? I would really appreciate it if you can shed any light on that "find" error issue, it will save me a lot of time so I don't have to manually go through my css files and search for the identifiers I need...

any IDE comparison updates since 2006?

Hi, Nice review. I do like the way you write! Anything less dated on IDEs? We're a small group of library systems types who are inheriting more and more open sorces stuff to 'tweak', and want to settle on a common IDE. Wondering what you settled on, and why...

Thanks

don

Nothing recent

I don't have any more recent reviews myself. I have since moved on to a Mac and I rarely use a full-blown IDE anymore. I mostly use Textmate which is a Mac only editor. In terms of IDEs the newer Komodo is really quite nice and so it is the one I now have installed. Zend didn't work on the Intel Macs initially and Komodo fit the bill. I've never even bothered to look at the newest Zend. Eclipse is getting there slowly but surely and has some nice version control integration but there are enough things about it that still annoy me that I've passed on it again.

On the Internet and did not write this!

Thank you! This is not usually!

good job

I like your writing style and I have added your site to my bookmarks, please keep posting, thanks.

Worked with both (and way more) ... my 2 cents

Zend was the IDE of choice for PHP for a very long time. The original platform was built in Java, so it had some performance issues every so often, but so many cool things that made you tolerate it slowing down a bit. The awesome debug tools also made it stand out as the clear winner.

Then came this awful idea to integrate it into (what I consider) one of the worst IDE platforms ever created ... eclipse. As a back-up to my statement, I have coded in over 25 languages, used every IDE known to man-kind including one my favorites in Scite, Visual Studio, VI ... name it. I use IDE's to help me code faster, debug better, and just make my life easier. Thus, once Zend moved to eclipse, I stopped my Zend subscription. In fact, I was even on the alpha testing group for that move and hated every moment of my life while working in eclipse (which I still think is a memory pig, even though its gotten a little better).

I then tried Komodo. It is not the original, php-dedicated Zend, but its damn close. The open source community is making it better every day, and version 4.4 is just rock solid. Its integrated directly with SVN and others, and easily configurable to work with XDEBUG. While I still miss ctrl-click on a function to go to its declaration, these are things I am more than willing to give up for a stable IDE that runs fast and is fully configurable.

If anyone really wants to figure this out for themselves, go download eclipse and use it for 2 weeks ... it is free. I dare anyone to actually say they enjoy eclipse (outside of pure java developers). If you have never used it, don't read a manual, just try and figure it out. After 1 hour of beating your head against the wall you will learn that everything MUST be a project. Now try and debug. Sure you can do it, but try doing it easily.

In short, if you are an eclipse fan, go with zend and continue on your path. If you are unfamiliar with eclipse, I highly suggest not bothering with Zend and play with Komodo (or PhpEdit, Scite, etc.). They behave like editors and IDEs everyone outside of the eclipse community is used to.

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd><img><div><small>
  • Lines and paragraphs break automatically.
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.

More information about formatting options