This might be the stupidest question but I would like to know whether we can host PHP site on Windows hosting? Are there any special tools for publishing php site?
Sure, you can host a PHP site on a windows server. It's not quite as easy to configure asa LAMP stack (Linux, Apache, MySQL, PHP) but you can still run the PHP site under IIS or Apache on a Windows machine.
As for special tools-- just the normal FTP client will do just fine, unless you're looking to use a content management system like Joomla or Drupal, in which case they have built in tools for publishing.
PHP is by default enabled on most of shared hosting services of windows. If PHP on your host is not running, you just need to ask your hosting company to enable PHP on your account or to assist you in the right direction.
PHP with FAST CGI option runs as fast as it runs on LINUX OS. Microsoft has made lots of improvement in IIS7 for PHP to cover OPEN SOURCE SCRIPT (WordPress, Drupal, Joomla, etc...) hosting market.