Sarà pur sbagliato usare php come template engine ma è più pulito a livello di codice. Modelli e controllori da una parte, template dall'altra.
Specie se qualcuno che non capisce un acca di php deve mettere mani ai template.
La soluzione per dividere completamente il codice è utilizzare il DomDocument (strumento molto pignolo) o classi come PHP Simple HTML DOM Parser. Se bisogna ciclare o iniettare il codice non occorre mettere dei foreach o dei puntatori ma utilizzare i classici attributi di html.