For template engines:
- Added security for end-user customization. Themes in pure PHP have unconstrained ability to cause harm to a user and their installation. Thus a template engine removes that risk, if it is a good one.
- Ease of use for non-programmers, such as graphic artists or web designers.
For plain-php:
- The speed of pure PHP cannot be matched by any template engine built atop it.
- The full power of PHP is available to the output, and not just an interpreted or filtered portion.
I prefer PHP itself if at all possible. And most folks don’t want to hack your software by making a custom theme, so it’s easy to take a cursory read and investigate its security. That said, I am the “between guy” who does both templating and programming, and even some graphic arts; my skillset differs from a strict programmer and a strict artist/designer.