Letztere Aussage entbehrt nicht einer gewissen Ironie - immerhin hat dedlfix ja gerade den nicht-so-kompliziert-Weg propagiert (nämlich einfach direkt PHP-Code zu verwenden) und du favorisierst die kompliziertere Variante, die erst eine interpretierende Template Engine benötigt und im Templatefile keinerlei Vorteile gegenüber dem PHP-Code hat.
Wahrscheinlich fehlt Dir einfach nur die Erfahrung, um den Vorteil einer Trennung Template/Code zu erkennen. Die kann ich nicht vermitteln, die musst Du selber machen.
Ich hab jedoch an einer anderen Stelle hier geschrieben, dass bei größeren Umbauten auch ein Praktikant den Vorteil einer solchen Trennung erkennen kann. Es macht am Ende alles einfacher.
PS: Meine Eigenbau Template-Engine hat 100 Zeilen Perl, nutzt RegExps und ist HTML::Template in Sachen Performance haushoch überlegen. Meine TE kann if/else/endif, loops und scalare und das ist schon alles was in der Praxis tatsächlich gebraucht wird.
Nochn Beispiel warum eine TE if/else/endif können sollte:
%if_eavchdir%
<fieldset><legend><strong>Neues Verzeichnis:</strong></legend>
<input name="dirname" style="width:20em">
<button name="mkdir" value="1">Anlegen!</button>
</fieldset>
%endif%
damit ein <form> zusammenbleibt und nicht in einzelne Templates zerstückelt werden muss. Der dazugehörige Platzhalter steckt in $self->{STASH}{eavchdir} wobei $self die Instanz der an den URL gebundnen Subklasse ist.