The arguments I've read supporting PHP scare me a little. They seem to boil down to a few things:
* It's not so bad, really. Here's a map of land mines to avoid. Hopefully it's complete!
* PHP is everywhere. Apparently COBOL and Visual Basic were also excellent languages.
* PHP is easy to start with. Newbies don't want to learn anything too hard; they just want to throw down some code. What could possibly go wrong?
* PHP is easy to deploy, as if that's an inherent property of PHP and not something that can be fixed for other languages.
I'd love to hear a real argument for why PHP is a great language for Web development. Not just a defense of PHP. We get it: every language has quirks. I code in C++, willingly even. I know a thing or two about whacky language quirks outside of PHP. But why should I choose PHP over all of my other options?
> PHP is easy to deploy, as if that's an inherent property of PHP and not something that can be fixed for other languages.
Other languages can fix that (they haven't yet) but at the same time PHP is fixing it's problems at a rapid pace. It seems that PHP is making more progress fixing it's problems and including modern features than other languages are improving their deployment situation.
One advantage of PHP, in my opinion, is that it supports multiple levels of commitment. I recently created a static website for my business; I didn't want the hassle of using a CMS or Wordpress. But I used PHP to include the common headers and footers and handle my contact form. In any other web platform (including PHP with a framework) is terrible overkill for a job like that. But if I want to do something more significant in the future, I can.
PHP's work cycle is also great; if done right you should have no build step. Just edit and hit refresh. I'm currently doing ASP.NET and it's just not possible to iterate as fast during development.
But honestly, I've used a lot of different platforms and PHP just isn't that different. Why choose PHP over all your other options? If your goal is distribution of your app then you can't go wrong with PHP because it's installed everywhere. And, depending on your language experience, you might be more comfortable in PHP because it's very literal; there's no monkey patching or heavy use of dynamic features. But really, there's no reason not use Ruby or Python over PHP.
Because you're supposedly educating non-PHP coders about PHP. Most PHP coders do, in fact, agree with me.