Why would you need a Web Server ?
Unlike a 'normal' HTM page, the contents of a PHP page has to be created 'on the fly' before your web browser can display it. So, in order to test your .php web pages (before sending then to your web host and going 'live' on your personal web site), you need a 'local' php server.
Why PHP and not ASP ?
ASP pages are essentially the same as PHP pages, however ASP = Microsoft, whilst PHP = Open Source. So, if you want to use ASP you have to pay (and pay and pay ...).
In effect, PHP dominates in the 'personal' & SOHO web sites whilst ASP dominates 'big business' (who get MS products virtually 'for free' as part of their volume licencing agreement')
What's the difference between ASP and PHP ?
Other than the cost, the ASP 'language' syntax is 'Visual Basic like', whilst PHP syntax is 'C++ like'.
Since VB is a lot easier to learn than C++ you may be tempted to take the MS route. However, like all things Microsoft, ASP is a 'hackers magnet' and when you add IIS to ASP it will be full of more holes than a chicken wire fence :-)
So, unless you want to spend a fortune in money and time on IDS (Intruder Detection System) software (to avoid your site being hijacked and your visitors auto-infected on arrival at your site), I suggest you steer well clear of anything ASP !
Note also that PHP is happy to use the free MySQL database server, whilst ASP demands MS-SQL (which will cost you another 'arm & leg')
How do I set up a PHP web server ?
If all you ever need to do is 'check out' the basic functionality of your own simple PHP scripts (before uploading them to your web site hosting service), use the Google code Java based emulation package. Needless to say, there will always be some PHP pages that do not look the same 'for real' as they do in 'emulation'.
I thus recommend installing the Apache server - if you need a 'back end' database (for example to support 'user registration', 'forums' or 'products & pricing' / 'shopping cart' emulation or photo gallery etc.) you really have no chice but to use the Apache Webserver
Most home web sites will never need My-SQL, however if you have any sort of user contributed content, MySQL is a 'must'
To use Apache, first download Apache and make sure to choose the install for 'localhost' operation on port 8080 option. Then install the PHP 'Thread Safe' Server (make sure to download the 'Windows Installer' package (rather than the .zip))
Note: I suggest PHP be installed into the C:\Program Files\Apache Software Foundation\Apache2.2\php (new folder). When asked by the Installer, you should 'identify' (browse to) the C:\Program Files\Apache Software Foundation\Apache2.2\conf folder as the place where the Apache 'config' file can be found.
To 'test' your php pages, they should be placed into the C:\Program Files\Apache Software Foundation\Apache2.2\htdocs folder.
You then start the Apache server (via Start / programs / Apache HTTP Server 2.2 / Control Apache Server / Start Apache in Console), launch your browser and type in "HTTP://localhost:8080" (this will display your home page, index.php)
NOTE. Running Apache with 'default' security settings as a 'localhost' is fine, just DON'T be tempted to try and use it to 'run' your own Internet facing web site !
Click 'Next >>' in the Navigation Bar (left) for my Wargames pages