I've used PHPDesigner for a couple of years (since version 7) and it has all of the features that you want and more. I've developed a bit of a love/hate relationship with it, though, so I'll go into my experiences using it.
First, your constraints:
- It has FTP/SFTP support, password or key based
- It has code completion and built-in documentation lookup
- It has pretty configurable syntax highlighting, and as you code error checking by using PHP itself to find syntax errors.
What I like
I really appreciate the just-in-time live error checking that it does, as it saves you from pushing something that has a missing brace or semicolon. It'll pop up the actual PHP error message at the point in the code that PHP choked on it. With some Xdebug support, it makes troubleshooting and debugging rather simple.
Git support (Mercurial on the way)
At under $100 with a guaranteed upgrade to the next release, I like the price.
It's developed by a single programmer and he's very responsive to feature requests and bug reports.
What I don't like about it
It's heavy, it feels heavy to use. There are buttons that you'll never know the reason for, or, at least, that's how I found some.
FTP support is okay, SFTP is still wonky. It doesn't handle socket timeouts in some cases which can be annoying when you really want to save your work when you're working on something remotely.
While it doesn't try to impose any kind of organizational structure to your project, getting certain frameworks going in it (e.g. Codeigniter) can be a bit of a pain, when you want the built in PHPDoc support for class methods and completion it can get from them. Still, you can get it working, it just takes some fiddling.
I had issues with tabs getting weird when saving on remote ext3/ext4 file systems via FTP. I then fixed that, but I have no idea how, which is a symptom of too many control knobs to turn.
It's developed by a single person. While I have no reason to doubt that he'll continue working on it for years to come, the one person 'bus factor' is always a bit of a concern to me.
All in all, it's a great IDE that can be made to feel more like an editor depending on how you customize it, what toolbars you show and what features you dive into. If you're just getting started with web development using PHP and JS, the built-in documentation lookup is really going to help you get up to speed faster than you would otherwise.
Give it a shot :)