Every language is good at something. Your taste, experience and objectives are NOT the absolute truth. Just because you don’t like it doesn’t mean its a shitty language and just because you love it does not make it a great language either.
Case of Java and C#
Programmers tend to hate languages due to their ignorance, the bandwagon effect and past unpleasant experience. I have to confess I never really liked Java or C# in the past but I always reminded myself to swallow my pride and use them on projects that required heavy lifting. If you are space nerd like me C# and Java is equivalent to NASA’s Saturn V Rocket its very powerful but the power comes with costs
Case for PHP
When it comes to programming languages nothing is perfect you have to embrace the strength and shortcomings of language and learn when it is appropriate to use one language over another.