Username or EmailPassword
5. is depends.
4. is gone in 5.4.
2. that isn't true.
Pretty much every extension that is support on Windows has threading support.
The problem is with all the other extensions which are not supported on Windows.
The cause is 2 fold:
1. the library the extension is using does not support threading
2. on Unix/Linux a large share of Apache users still uses pre-fork of FastCGI. Thus threaded PHP does not gets a lot of testing. Edited 2012-10-01 12:25 UTC
(Adding back my numbers for context)
2. Thread safety
"2. that isn't true. Pretty much every extension that is support on Windows has threading support."
It is true, at least on linux/apache, I've tested it myself, it was racy (I'm not referring to extensions either). If they've fixed it I'd really like to know from someone who's *thoroughly* tested a more recent version.
"2. on Unix/Linux a large share of Apache users still uses pre-fork of FastCGI. Thus threaded PHP does not gets a lot of testing. "
That's rather circular isn't it? I say we're stuck using pre-fork because of threaded PHP bugs, you say threaded PHP is buggy because we're still using pre-fork.
4. Magic quotes.
"4. is gone in 5.4."
Yea, it represents yet another compatibility breaking change. In a production environment a hosting provider cannot simply update to 5.4 and break all the installations of OS commerce etc, so many providers are still holding back, which is arguably the right thing to do instead of breaking client websites. My provider actually *still* assigns .php to PHP4 for this reason. For PHP5, we can use .php5 files. I suppose they could install PHP5.4 and make us use .php54 files or some .htaccess kludge, but we're only in this stupid situation because of the shortsightedness of PHP developers in the first place.
I am thankful that future code will be free of the magic quotes crap, but we're still in the fallout.
5. Lack of session concurrency.
"5. is depends."
...on what? Take a stock PHP installation, use the stock session handler, and it blocks like a mutex.
I'd hope PHP eventually solves all the technical shortcomings. In the end, it's a "good enough" language, but the mess with namespaces/function names is probably never going away. Edited 2012-10-01 18:39 UTC