Brian Swan has a new post to his blog today showing you how to use caching for performance tuning on your Windows/IIS PHP application. He uses the IIS 7 output caching method instead of an external cacing tool or library.
The IIS output caching module allows you to configure IIS to cache dynamic pages generated by PHP. When a PHP page becomes "hot", the content of the page is cached so that is served without executing the script that generates it. [...] With the IIS Output Caching module you can cache all pages generated by PHP, vary what is cached by query string parameter value, or vary what is cached by header value.
He touches briefly on when he thinks you should use output caching for your applications since it can add extra overhead if it's not actually needed. He suggests turning it on when you have entire pages that don't change often and could benefit from just being displayed as-is. He shows how to enable the caching on IIS and includes some bits of code to show the results. There's a few other handy features he points out too like a file change notification and a configuration for a time interval caching rule.