Quite often, I am asked the question “What tools do I need for PHP development?”. Some of the ‘askers’ expect to spend hundreds of dollars on development tools, others are utterly bemused when trying to select the ‘perfect’ IDE from a long list options. Still others (admittedly less frequently) come to me asking whether they should buy a PC or a Mac to facilitate their PHP development or if they should go with Linux or Windows. I’ve read forum threads where even seemingly seasoned PHP developers go at it over which tools are a ‘must have’ if you want to become a ‘rockstar developer’. For those who will listen, I have one very simple answer to that question: Aside from a server running PHP and a text editor, you need absolutely nothing. That answer may seem extreme but its the truth. Lets break it down.
PHP is a very flexible software package. It runs on just about every major computer architecture and operating system currently on the market. Also, the hardware requirements are very low. I’m pretty sure that if I wanted PHP to run on my BlackBerry I could get it ported over to BlackBerry OS. This makes the choice between Mac and PC or Windows and Linux as it relates to PHP irrelevant. When it comes to IDE’s, the reality is that you don’t really need them. You can write PHP in notepad. For over a year I effectively wrote my PHP code exclusively using Gedit with a few plugins on Ubuntu. After a while I switched to Notepad++ and since then I haven’t looked back. I’ve tried Netbeans, Aptana and Eclipse which are considered by many to be among the leading PHP IDE’s around. None of them tickled my fancy. So, in essence, any server running PHP and possessing a text editor should be enough to write and execute PHP.
Of course, there are tools that make develoment easier. For example I use the Firebug, FirePHP and YSlow Firefox plugins along with PHPDocumentor extensively during development. Others rely heavily on frameworks, code profilers and debuggers. Software such as xDebug and PHPUnit are staples in the arsenal of many developers. At the end of the day however, all you really need for PHP development is a PHP enabled webserver and a text editor. Tell anyone I said so.