In a nutshell
For enterprise level apps (like the one you describe) use Zend or Symfony. The former is more flexible, has good documentation, but can require a lot of configuration - the latter has some really nice components, but again needs a fair bit of configuration and can be quite slow.
For simpler apps - use CodeIgniter or CakePHP - personally I don't like Cake, it has some nice features but has too much magic for my tastes. CodeIgniter has excellent documentation and it's huge community is a great resource for troubleshooting.
There are other frameworks to consider - but I only have experience with these.
Personally, given your requirements, I'd go with Zend