The fundamental problem with PHP is that it has roughly 15 years of crufty functions with nonexistent naming conventions and senselessly-random parameter orders
That's pretty much it. Function names and parameter order. It's a shame that it's basically impossible to fix at this point. Then again, they might not want to fix it.
PHP's biggest problem is that it's ridiculously easy to use. I can rant about why that turns insecure developers away from a language, but I think everyone is sick of hearing about that by now!