PHP == open source.
ASP == microsoft.
I can't say why some corporations use ASP other than perhaps their infrastructure is based on Windows-based servers; I guess they also have the money to spend on Microsoft licensing etc.
I personally use PHP because it is open source. The syntax and semantics of PHP are more like C/C++, and Java rather than it being Visual Basic-esque. You can run PHP on basically any server environment: windows, linux, bsd, solaris, etc. On the other hand, running ASP on linux-based systems require additional commercial software (one of them I know has been purchased by Active State, I believe) which again requires licensing.
All you need for php development is to get a computer ready with almost any OS, go to php.net, download and install and make it work with whatever web server you are running. I don't even know how to get started with ASP other than having Windows, and IIS.
PHP and ASP aren't the only scripting choices you have, Ruby is getting ever more popular nowadays with ROR (ruby on rails), very fascinating scripting framework. You also have Perl, JSP and ColdFusion.