.... so what you're saying is that you cannot do anything remotely complex in PHP ....

Which book did you read, because I think you have either been misinformed or mislead. All of the languages you have quoted are all derived from C/C++/C# so, technically, they're all the same. Constructs maybe slightly different, but essentially there is little difference between them.

It is personal preference as to what language you're comfortable in using, but you should never dismiss PHP because you think it can only do simple things. ASP.Net can look great, but that is only because it takes so much from the Windows interface and the .Net libraries - downside is that you're limited to Windows. Java is "write once, run anywhere" and can be installed on many operating systems. PHP is also "write once, run anywhere", can be installed on many operating systems, "lightweight" in comparison to the other two, and can run very easily on Apache and IIS. It does rely on the open source community for updates, improvements and add-ins, but an accomplished developer can produce web applications just as quick as if it was being developed on Java or ASP.Net.

And, anyway, life would be boring if there was just one language to use .... we need variety in our lives - it keeps us in a job !!!