Fave programmer question - so what's wrong with your favorite language? The wrong answer is "nothing".
Right now PHP is my favorite language, since Cold Fusion and ASP are my other choices. If I had total freedom to pick a platform I would be using Delphi or Smalltalk, possibly Ruby, but those are way outside the actual use curve.
1. It takes an excessive amount of care to not create security holes in PHP code. There are some things the language can not easily take care of for you, but PHP has some things it should take care of and doesn't.
2. Most hosting services run outdated versions of PHP, and can different options turned on and off. Since the stuff I'm working on now is usually being hosted by somebody else the task of creating a library of useable and secure functions is greatly complicated.
3. There are differences between the Windows and Unix runtimes that can trip you up. I don't mind the obvious file paths are different problem, that is to be expected but there are also a few built in functions that exist on only one platform or the other and a few that work differently.
4. The language space is quite messy. There is no consistant naming standard used and there are often multiple, trivial variations of the same function. PHP doesn't have any namespace either, which can complicate projects.
5. The built-in email function is obscure, difficult to use and differs between windows and Unix. This would rank even higher except there are several good replacement libraries you can get.
Jay