Recently, NuSphere released PHPEd as the PHP Development Environment for the enterprise developer. As NuSphere say,
"To keep pace with market demand, development professionals need a cost-effective, customizable application that leverages the strengths of PHP. NuSphere PHPEd is that application."
I thought I’d take it for a spin…
My initial impression of PHPEd was "wow". The installer came complete with all the applications needed to create, test, debug, secure and deploy PHP + MySQL Websites: Apache, PHP, MySQL, Perl, NuSphereMail, MyODBC, MySQL JDBC, CVS, NuSphere security console and the actual PHPEd IDE itself.
The installation program existed completely inside a Web browser window, and it took around 10 minutes to install and configure everything mentioned above. I already had MySQL installed, so the installation program cleverly detected this and skipped it.
Working With PHPEd
Once everything was installed, I fired up PHPEd via the start menu. I was greeted with the PHPEd IDE, which looks like this:
I went about creating a new PHP document to connect to my locally installed copy of MySQL. As with many other IDE’s, my code was colored according to syntax, comments, etc. One great thing I noticed was the built-in syntax suggestion tool. To use it, you simply type the start of a PHP function name, such as "mysql_con" and PHPEd displays its syntax suggestions for the way that you should call the function:
Also, when you’re typing the name of a function to call in your PHP script, but aren’t too sure what its name is, PHPEd will display a list of functions whose first letters are similar to those you’ve typed in so far. They’re displayed in a floating list box that resembles the way Microsoft has implemented its intellisense feature in both Visual Basic and C++:
As you can see in the example above, I’ve created four variables. Each time I pressed the "$" key at the start of the variable name, PHPEd displayed a list of variables currently declared throughout the PHP script I was writing. This is a handy feature and helps minimize incorrect name referencing of variables.
The PHP Manual’s Built In!
PHPEd also includes a built-in copy of the PHP manual. To see a definition and example for any function, simply type that function’s name into your script and then press the F1 function key:
When I create ASP pages, I use Visual Interdev. My favorite feature of Visual Interdev is its unlimited undo command. Much to my surprise, PHPEd also supports unlimited undo commands from the edit menu. This is great when you decide to change some critical aspect of your code, save it, and then decide to revert back to the older code at the last minute.
Another feature that caught my attention was PHPEd’s very intuitive settings dialog. By simply clicking on the Tools -> Settings menu option, I was greeted by a huge number of tabs containing all the options that PHPEd uses to format code, complete words, connect to Apache, etc., contained in this window:
The "Code templates" tab provides code samples for some of PHP’s most popular keywords and functions including "switch", "for", "mysql_connect" and "list". If you find a new function that you know you’ll almost always use, then you can click on the "Add" button to add it to the list of functions with your own code example:
Because I normally create my PHP code with notepad, I wasn’t used to PHPEd automatically closing brackets and braces for me. Actually, I found it quite annoying. Luckily, though, there were "Auto-close quotes" and "Auto-close brackets" options in the settings menu which I simply unchecked.
PHPEd has built-in support for connecting to, viewing and querying MySQL databases. The MySQL tab provides one click login access to databases. Once connected, you use a tree view structure to navigate through databases, tables and users:
To display the schema for a database or table, you simply click on it, and it’ll appear in the main window. There are five buttons that give us information about the currently selected MySQL table: Summary, structure, data, privileges and SQL, which allows you to query the database and view that queries results right there in PHPEd’s main window:
This is a great timesaving feature and works in the same way as Microsoft SQL Server’s Query Analyzer tool. It saves you from having to use the MySQL console application or phpMyAdmin to manipulate your databases all the time.
Although the built-in MySQL support is great, PHPEd does lack support for the several other popular databases that PHP supports including MS SQL Server, Oracle and PostgreSQL. This is a shame really, as PHPEd supports MySQL so well.
The last (and most important) feature that I want to talk about is PHPEd’s built-in debugging support. If you’re working with a variable and want to see its current value at any point in your code, you simply highlight it, and PHPEd will show a tool tip with its current value, like this:
Another debugging feature of PHPEd is its code debug-and-display feature. We can pass a snippet of our code to the debugger, which displays the results in PHPEd’s built in browser window. To do this, we simply select the piece of code that we want to debug and then click on the Run -> Run In Debugger menu item, or press the F5 function key.
Just like in Visual Basic, we can also set break points, run code up to a certain line, step over, into and out of code, and add variable watch points to our code. All of these options are accessible from the Run menu (pictured at right).
When you’ve created your site and are ready to upload it, PHPEd comes to the rescue with its built-in FTP manager. It’s literally a two-click process to connect to your Web server via FTP: one click to edit your account details, and another to actually connect to your server.
You can also use PHPEd’s built-in FTP manager to open remote files locally. This is a great time saver if you’re constantly changing files on your remote Web server.
PHPEd At A Glance
- Tightly integrated support and functionality for MySQL databases
- Great built-in debugging and stepping features, which makes debugging your PHP scripts a breeze
- Auto-complete function name suggestions and function parameter listings
- Built-in FTP manager for opening remote files quickly and easily
- Installs and automatically configures Apache, PHP and MySQL
- A tad on the expensive (and ironic) side for an IDE that supports a scripting language released under the GPL
- When I ran PHPEd on my Windows 2000 machine it crashed 4 times over the 6 hours that I was testing it
Who’s it for?
PHPEd is a great IDE for quickly and easily creating PHP scripts that incorporate MySQL data basing functionality. If you’re looking for an IDE that will allow several developers to easily work on one project together, or even a tool just to help you get things done quicker, then PHPEd is definitely for you.
I would recommend it to anyone who has around 3-6 months experience with PHP and MySQL, and is looking for a way to combine the advanced functionality of phpMyAdmin, a slick debugger and a handy IDE into one complete package.
Overall, I give PHPEd eight stars out of ten.
PHPEd comes in two flavors: PHPEd, which retails for USD $299, and PHPEd Advantage, which retails for USD $495.
For more information on PHPEd or to purchase, visit the site.