Nobody will dispute that PHP has by far the best deployment story if you need to quickstart something (see http://blog.ianbicking.org/2008/01/12/what-php-deployment-ge...). But for an application of any complexity, really, you'll have more important stuff to worry about.
easy rollbacks to previous versions if a deploy went awry, separate static media serving (because it's faster), load balancing and the like
Other things that come to mind are database migrations, running tests before deployment, pushing code to multiple servers etc.
It is probably a good idea to automate all these tasks.
Yes, with an application server you might have to reload the code, but it doesn't really matter, because thats just one step of your automated deployment.
And if you use an opcode cache you probably have to restart the server with PHP anyway.
Have a static site that needs one page with dynamic content? Just make that one page PHP, and do whatever you need.
Need a basic caching/templating engine? Smarty.
Need a basic linear blog? Hack something with Wordpress.
Need a more complex site with categories and plugins, that fits into a wide community? Drupal.
Need to have full control over how the thing works? Use something like CodeIgniter or Cake.
Lots of options out there, and PHP is stupidly simple to deploy compared to most other technologies.