Ormai abbiamo tutti sentito parlare di Template Engine. C'è chi esalta la loro capacità di dividere logica da presentazione (con effettivi guadagni in termini di tempo ed organizzazione) e chi invece li vede solamente come uno dei tanti strumenti che complicano la vita dello sviluppatore di siti web.
Nel panorama PHP questa differenza si fa ancora più marcata: difatti c'è chi ritiene che lo stesso linguaggio sia un sistema avanzato di templating (se utilizzato nel modo corretto) e quindi ritiene inutile, nella maggior parte dei casi, l'utilizzo di sistemi alternativi o pralleli. A dir la verità non sono affatto d'accordo con questa opinione (ricordiamoci sempre che di opinioni si tratta, chiunque sia la fonte!): sarà pur vero che sistemi troppo avanzati come Smarty tendono a lasciare troppa libertà al designer esulando dal contesto dei template engine; ma ci sono sistemi veramente validi che riescono a semplificare la vita in moltissime situazioni senza necessità di conoscenze avanzate o capacità di programmazione. Prendiamo per esempio PHPTAL: non l'avevo mai usato prima di qualche giorno fa, quando stavo sviluppando un template engine per lavoro e mi sono trovato a navigare su internet e scoprire che il mio template engine funzionava proprio come questa implementazione delle ZTP in PHP. Il sistema è ottimale: nella sua semplicità offre un ambiente completo con il quale occuparsi di svariate situazioni. Che dir si voglia io con i template engine mi trovo bene, ed ormai difficilmente riuscirò a separarmene ...