7.1. Was ist Smarty?

Smarty ist eine Template-Engine für PHP. Genauer gesagt erlaubt es die einfache Trennung von Applikations-Logik und Design/Ausgabe. Dies ist vor allem wünschenswert, wenn der Applikationsentwickler nicht die selbe Person ist wie der Designer. Nehmen wir zum Beispiel eine Webseite die Zeitungsartikel ausgibt. Der Titel, die Einführung, der Author und der Inhalt selbst enthalten keine Informationen darüber wie sie dargestellt werden sollen. Also werden sie von der Applikation an Smarty übergeben, damit der Designer in den Templates mit einer Kombination von HTML- und Template-Tags die Ausgabe (Tabellen, Hintergrundfarben, Schriftgrössen, Stylesheets, etc.) gestalten kann. Falls nun die Applikation eines Tages angepasst werden muss, ist dies für den Designer nicht von Belang, da die Inhalte immer noch genau gleich übergeben werden. Genauso kann der Designer die Ausgabe der Daten beliebig verändern, ohne dass eine Änderung der Applikation vorgenommen werden muss. Somit können der Programmierer die Applikations-Logik und der Designer die Ausgabe frei anpassen, ohne sich dabei in die Quere zu kommen.