.... depends on the definition of environment .... Actual development of PHP you can simply use a text editor - vi or gEdit if you're using Linux, Notepad or Wordpad if you're using Windows. Personally, I use a licensed version of phpDesigner (http://www.mpsoftware.dk/phpdesigner.php) - very good editor, and well worth the money. Running environment, I agree with pradeep - open source solution with Apache is very good, and highly recommended. Configuring IIS (Windows) with PHP is possible, but quirky. Also, there are subtle differences with programming PHP to run on Apache and IIS - IIS forces you to declare all variables .... not a bad thing, mind you - it's always a good practice. You can also run PHP scripts directly from the command prompt, using the php.exe (windows) file extension. If you're ever looking at automating PHP scripts within Linux, I would recommend calling the scripts using Lynx, which is a text-only web browser, with cron - I've been using this method for a few years now and never a missed automated report!! It would be a good idea to use both operating system environments, and develop your skills to both Windows and Linux. This way you can adapt your code easily to run on both, without the need to re-develop, and offering your client/customer the best of both worlds.