It took me some time using PHP to realize it wasn't as bad as its bad rep had lead me to believe.<p>It's old, it has been through a lot of changes, most of them great improvements (although leaving some ambiguities behind, I admit) and it's so wildly popular on the web that the amount of disastrous coding and outdated information spread is a mess to deal with and discourages a lot of people who take software development seriously.<p>Personal Home Pages has its original purpose stated on its name and it used to be something you wouldn't want to be endorsing on a multi billion USD web service with millions of users.<p>Yet, PHP has become much more than a language for adding some cool web forms, a guest book and some other dynamic content on amateur home pages uploaded to shared hosting services.<p>We still have a hard time taking seriously any programmer who starts saying (s)he codes on PHP. Many of them can run in circles around me and any other developer any time with their skills, and I don't think their language of choice should have any impact on the judgment we do on their abilities or the quality of the software they build.<p>I still prefer many other languages over PHP but now I see them as just preferences (sometimes more or less appropriate, depending on the context), not better or worse choices.<p>Let the kids fight over which language is the coolest, I just want to get the work done.
Putting aside all the horrible choices the language designers made (hellishly inconsistent naming, no proper exception usage by the standard library functions, functions are not first-class citizens, etc etc etc), the one thing that truly makes PHP revolting are the majority of people who write PHP code. And by the way, if PHP is the only language you know, chances are -- you're one of those developers. The community is so uniquely bad, I ofter wonder if PHP's language design actually has something to do with it.<p>Python/Ruby community is much different.
You don't hate PHP because it doesn't have sexy peripheral utilities like other contemporary language hipsters do. You hate it because it's a badly designed language/runtime/standard library. And it's not getting any better although it had had ample time to do that.
This has been my go-to link when trying to explain what's wrong with PHP: <a href="http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-design/" rel="nofollow">http://me.veekun.com/blog/2012/04/09/php-a-fractal-of-bad-de...</a>
It's insecure by the language design, not from the framework itself.<p>When I pen test PHP custom-built sites, I almost always find a dozen high-severity security defects.<p>Many of the popular PHP-MySql tutorials on the web have sql injection bugs, not a good way to learn a new language.