RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX


EnginSite Editor: A Fully Loaded PHP IDE on the Cheap

Suddenly, the marketplace for PHP IDEs is headed into second gear. We stumbled across a little-known offering from a small German software company and discovered a darn good IDE at an excellent price point.

ntil recently I did most of my PHP development using DreamWeaver or Notepad. I wasn't happy with most IDEs for developing PHP applications. In my opinion, the best IDEs for software development were, and still are, Microsoft Visual Studio.NET and BEA Weblogic Workshop. In the PHP world, there just wasn't anything that was in the same league—not until the arrival of the Zend Studio, which I reviewed for DevX in January.

Now a new, low-cost alternative has entered the scene: EnginSite Editor for PHP, from German software company Luckasoft (http://luckasoft.com/). For $79.95, Luckasoft offers a full-fledged IDE and debugger for PHP with many of the bells and whistles that you'd expect from an enterprise-class development tool.

Admittedly, I was first skeptical that a company that 'specializes in software for the packaging industry' would be able to create a decent general purpose IDE, but after downloading and trying out the product I was very pleasantly surprised. It's a slick and high-performing IDE that is fully loaded with just about everything that you would expect from a modern software development environment. It has a wonderful template library, intellisense, and integrated help with useful references for HTML, JavaScript, and CSS.

Installation and Getting Started
EnginSite Editor is a Windows application; there currently is no Linux incarnation. (You can download a 30-day free trial of the package at http://www.enginsite.com/Download.htm.) Installing is a snap. Run the .EXE that you downloaded, sit back for a couple of minutes, and you're done. Launching the IDE is fast too: It took about 5 seconds on a 1.5Ghz machine with 1.5GB of RAM. (Compare this with about 25 seconds to launch Visual Studio.NET on the same machine.) This is an important feature in my opinion; developers do a lot of launching, closing, testing, and relaunching in any daily development cycle—a speedy launch is key to productivity.

Figure 1. IDE Layout: Despite the low price, EngineSite is just what you'd expect from an IDE. The basic GUI has all the standard features in all the standard places.
Figure 1 shows the basic GUI, once launched. There's nothing new or surprising here: a categorized toolbar of HTML page elements and a toolbar for controlling the IDE and your code are at the top of the screen, an explorer view of your current project is on the left, and code editing is on the right. At the bottom of the screen are variable and debugging inspectors. If you've ever used Visual Studio.NET, it will all be very familiar.

One thing that is missing, but forgivable given the low price tag, is an integrated data environment. What would be really nice is a tool where you can connect to a MySQL database and edit and browse your data and auto-generate code for connecting to that database. But at this price point, that can be overlooked. (I personally prefer to use the MySQLCC tool for this.) EnginSite IDE offers the facility to add tools to the IDE, extending it by specifying the EXE of the tool, but a bug in the current version prevents you from using this facility—when you add a tool using the extensions dialog, it doesn’t show up on the tools menu. As of version, the most recent build, this bug is still outstanding, but Luckasoft is aware of the problem.

Coding with EnginSite
Where EnginSite really shines is in the support and assistance that it gives you while coding. Click File->New and you get a plethora of templates from which you can create new PHP or HTML pages. Figure 2 shows the wizard for selecting templates.

Figure 2. New File Dialog: File->New gives you a selection of templates you can use to get started. Click on each one to see its code in the left panel.
Figure 3. Auto-complete: Suggestions for completing my database object pop up in a helpful cursor dialog.

A nice touch is that you can use the template to create a new page or to insert the selected snippet in your existing page. This would be an incredibly useful feature for anyone new to PHP, as it would serve as a learning tool for common tasks such as connecting to a database, reading from a database, or form management. Even for a hardened PHP coder it is a great time saver, and it uses well-known proven methodologies and patterns for common tasks. For example, one template is for an e-mail validator that generates the code:


function is_email_valid($email) { 
  if(eregi("^[a-z0-9\._-]+@+[a-z0-9\._-]+\.+[a-z]{2,3}$", $email)) return TRUE; 
  else return FALSE; 

This was something that I personally spent several hours figuring out how to do when I was first getting into PHP, and I don't think I did it as well as this. For this feature alone the $79.95 purchase price would have been justified.

Once you've created your new PHP script and you're ready to start coding with it, the next batch of happy surprises begins: syntax highlighting and autocomplete. Figure 3 shows autocomplete in action, where I am using a new object of type 'database,' which is based on a class that wraps the MySQL database. When I try to access the object from EnginSite, the useful autocomplete dialog pops up inline with a friendly tip on what's available.

Close Icon
Thanks for your registration, follow us on our social networks to keep up-to-date