Screwdrivers are really that bad, you can't even use them to pound a nail properly...
Screwdrivers are really that bad, you can't even use them to pound a nail properly...
So, I think you have it backwards. Async is unnecessary in many places, but backend is the place where it's very important.
In my opinion, it has no valid use case that isn't done better by something else. The only thing I can think of is for shell scripting when your bash script is a little too long.
It's also been around for, what, 30 years, and still hasn't changed its broken fundamentals. And it isn't going to. It needs to be deprecated. It's run its course.
You get coroutines, threads, strong static typing, etc. Not the perfect type system, because it's still limited by the JVM, but much much better than Java, PHP, etc.
You can use one of many event loop implementations with PHP, including libuv, if you so wish.
But should we need to do this for a 25 year old backend language?