I don't like having to use the global keyword all the time,
I agree, don't use it. I develop in PHP and never use globals. Use parameters, defines, and constants.
the way || and && works,
It works the same way as many other languages. I don't see the problem.
the performance
I take it you are talking about the applications performance and not the speed at which one can develop? Are you comparing against something like Java or C++?
the obligatory dollar sign
I can understand this one as it is different from other languages, but I've actually come to think the other way now. I love the dollar sign clearly showing me whats a variable and whats not. I wish other languages had it too now.
unicode, isset vs all the other ones, array_map et al, etc
Please clarify what you mean here. You don't like the array_map function? Don't use it then.
there were some nice additions done to it like traits
I actually thought this was a large step backwards. The AWS SDK heavily uses this to avoid creating a truly OO codebase. Use inheritance and dependency injection instead.
it still feels like its lagging behind the other languages just like Java.
I missed the memo where Java is lagging behind? It is still incredibly strong in the programming industry and still being developed. It is one of the few programming languages that makes it easy to create multi-threaded applications and with an OO codebase at that.
For IDES, theres Webstorm and some really bleeding edge stuff like Light Table (check it, its amazing).
I tried webstorm, it suffered from lack of OO support. Try making a class in Javascript (which doesn't have "native" classes, only functions) with a private and public variable and methods, as well as static ones and check that you can't see the private ones when interfacing with an instantiated object, as well as being able to see the public ones. I will have to see if Light table works.