Chris Shiflett mentions in this new post today Theo Schlossnagle's Lightning Talk from this years OSCON. The topic? "Six Reasons PHP Sucks".
I've never disputed the fact that PHP has problems, but for some reason, everyone who tries to explain why PHP sucks misses most of the actual reasons it does. It's astonishing.
Chris also makes the comment that he doesn't actually give six reasons, but the first three of the ones he gives are solid ("No lexical scoping", "No namespacing", and "World's worst configure system").