PHP or JS for header image rotator?

Using PHP sends less code to the end user. (a single img tag instead of all the javascript logic). If you enable browser caching settings correctly (try W3 Total Cache), once the end user has “seen” all the images, those will all be in their cache, so on the “long tail” JavaScript vs. PHP solution is equivalent.