5. The set of functions for a gazillion useful everyday things that don't come standard in other languages. Where else would you find functions like htmlentities(), strip_tags(), mysql_real_escape_string()? I like list comprehensions - Python can be very concise - but PHP isn't exactly verbose:
6. Navigating or searching the online documentation is lightning quick. You don't have to know the names of functions or variables, you'll find them. The examples are like mini tutorials.
7. The write-test turnaround is lightning fast. There's probably not a small group of languages in this group, but you will really notice this if you come from say, JEE.
You need (need!) a language that's fun to use (that's fun for you to use), day in day out, not verbose, nor loaded with layers of frameworks. PHP is simple, direct, and I haven't been bitten by problems that in other languages have taken days to work out... or have never been worked out.
Honestly, I have never been bothered by the humungous list of "issues" in the link at the top of Jeff Atwood's post.
BTW, === exists explicitly to test type equality first, that's the point.
When I wrote in PHP (and it lasted 10 years just to let you know), I would say exactly the same. PHP tasted better than, say, C++ Builder.
As we use to say in my country, "never tried things sweeter than carrot". I mean that was about me: I didn't know better things existed.
All that is done better in Python:
5. You don't need many of functions you use in PHP, for instance, _real_escape_string is not needed when you can do cursor.run("SQL Query param1=? AND param2=?", [param1, param2])
6. You can get help on functions in coding shell:
>>> help(open) # help on file opening function
or even
>>> open? # in IPython
With that I look into online or PDF docs quite rarely.
7. That's even faster in Python: you try things out in the shell, then save the shell session (IPython) and copy the code you need into the working file.
Moreover, while in PHP I was adding var_dump's everywhere, reloading a page 10 times before reaching the source of a bug, in Python I just do $ python -m ipdb same_script.py and have the debugging shell in the place I need, and it takes a minute of two to find the source of a bug.
5. The set of functions for a gazillion useful everyday things that don't come standard in other languages. Where else would you find functions like htmlentities(), strip_tags(), mysql_real_escape_string()? I like list comprehensions - Python can be very concise - but PHP isn't exactly verbose:
Compare, reading a web page:
http://rosettacode.org/wiki/HTTP#PHP
http://rosettacode.org/wiki/HTTP#Python
http://rosettacode.org/wiki/HTTP#Java
Sending an email:
http://rosettacode.org/wiki/Send_email#PHP
http://rosettacode.org/wiki/Send_email#Python
http://rosettacode.org/wiki/Send_email#Java
6. Navigating or searching the online documentation is lightning quick. You don't have to know the names of functions or variables, you'll find them. The examples are like mini tutorials.
7. The write-test turnaround is lightning fast. There's probably not a small group of languages in this group, but you will really notice this if you come from say, JEE.
You need (need!) a language that's fun to use (that's fun for you to use), day in day out, not verbose, nor loaded with layers of frameworks. PHP is simple, direct, and I haven't been bitten by problems that in other languages have taken days to work out... or have never been worked out.
Honestly, I have never been bothered by the humungous list of "issues" in the link at the top of Jeff Atwood's post.
BTW, === exists explicitly to test type equality first, that's the point.