Templateengines

Templateengines

Da wir nun die PHP Grundlagen soweit abgeschlossen haben, wenden wir uns nun fortgeschrittenen Themen zu. Auf dieser und den folgenden Seiten geht es darum wie wir Code und Design in einer PHP Anwendung klar trennen können. Dazu schauen wir und in diesem Abschnitt speziell das Templatesystem Smarty an. Aber vorher ein paar grundlegende Dinge.


Ein Anfänger in PHP würde vermutlich Ausgaben mit Echo in den Code schreiben:

<ANYSCRIPT>

 for($i = 0; $i < 20; $i++){   
echo "<img src=\"mog.gif\" />";
}

</ANYSCRIPT>

Dieses Vorgehen hat jedoch den Nachteil das der Quellcode schwer lesbar ist. Ausserdem lassen sich Änderungen am Code schlecht durchführen. In diesem Fall kommen noch die Escapesequenzen für die Anführungszeichen hinzu die doppelt störren.

Bei heutigen Anwendungen kommt ausserdem hinzu, dass die Oberfläche schnell veränderbar sein soll, am besten durch die Änderung einer Templatedatei.

 

Die Smarty Templateengine

Die am weitesten Verbreitete Templateengine in PHP ist wohl Smarty.

Üblicherweise erzeugt man eine .tpl Datei. In diese tpl Datei steht HTML Code und Smarty Marker. Diese Smarty Marker können später ersetzt werden, z.b. durch Text.

Darüber hinaus bietet Smarty auch noch interne Funktionen. Es ist mit Smarty beispielsweise möglich einen Teil der Anzeigelogik in das Template zu bringen.

Sehr detaillierte Informationen zu Smarty bietet ebenfalls die Smarty Homepage unter smarty.php.net

Um die Performance zu erhöhen besitzt Smarty ein Cachingsystem, das die gerenderten Templates zwischenspeichert.

 

 

Navigation