Every language is both over-rated and under-rated by their fans and detractors respectively.
The key thing a professional programmer learns is to use the right tool for the job at hand. That means being fluent in multiple languages, databases, frameworks, and toolkits. While I have been focused exclusively on Java for the past several years, that's because it buys me the cross platform portability that I want, not because it's "better" than C/C++, C#, or even Pascal.
I'd be quite content to do some more C++ work at some point in the future. C# was kind of fun, too.
But PHP I hate with a passion. I'd far rather write servlets with Java than dive into that unholy abortion of untyped interpretation.