To start learning PHP, you need two things: HTTP Server and PHP with binding to this server. I strongly suggest to use most popular bundle:
- Apache HTTP Server from http://apache.org/[^].
- PHP from http://php.net/[^]. Windows binaries are found here: http://php.net/[^], Linux binaries are usually comes with the distro or can be build from source: http://php.net/downloads.php[^]; for other OS, see the same page.
- Apache module for PHP support: mod_php5. Is can be found in PHP installation. There are many way to install and run PHP. You can use PHP as a stand-along application, but for Web development is'ts the best to install it as Apache module.
- PHP documentation: see http://php.net/docs.php[^].
This does not include PHP debugger. For debugging, I like using unusual way: PHP for .NET product called Phalanger, see
http://en.wikipedia.org/wiki/Phalanger_(compiler)[
^],
http://phpcompiler.net/[
^]. Visual Studio integration is also available. It is designed to be used with ASP.NET, but I used to use it for development "standard" PHP pages with mod_PHP5. I developed and debugged separate PHP units and after testing inserted them in my PHP pages. The reason for using "standard" way of using PHP with Apache mode_PHP is that it is a standard part of LAMP bundle (
http://en.wikipedia.org/wiki/LAMP_(software_bundle)[
^]). Web hosting based on LAMP is very popular and inexpensive (ASP.NET hosting is usually mode expensive), is became a standard-de-facto, so you can expect pretty much standard services with guaranteed standard feature.
For learning PHP and development you don't need any hosting; you should install and run the bundle explained above on your development computer.
I would not recommend learning PHP for first or second computer language — it does not help to learn good and clean programming techniques, in contrast to ASP.NET, which is based on .NET with very good, clean and modern programming culture.
Good luck,
—SA