Damit die Lösung für den Kunden auch nach -zig Änderungen immer noch wartbar ist und sich außerdem der Grafiker so richtig austoben kann, ist der Einsatz von Templates an sich immer eine klasse Idee. Aber bevor ich Smarty einsetze, überlege ich lieber zweimal … für kleinere Projekte nutze ich lieber etwas Leichtgewichtigeres wie zum Beispiel eine eigene Template-Klasse.
Um mal ein Beispiel zu geben, wie ich mir den Einsatz vorstelle, hier etwas PHP-Code:
$page = new Template (‘templates/page.html’);
$page->assign (‘title’, ‘Hallo Welt!’);
echo $page->get ();
Das HTML-Template für mein Beispiel namens templates/page.html sieht dann etwa so aus:
Scheint so ähnlich wie Smarty zu funktionieren, oder? Ist aber viel kleiner … mein File include/template.php enthält nur folgenden Code:
var $content;
var $param = array ();
function Template ($file) {
if (is_readable ($file)) {
$this->content = file_get_contents ($file);
}
}
function assign ($key, $value) {
$this->param[$key] = $value;
}
function get () {
foreach ($this->param as $key => $value) {
$this->content = str_replace (‘{‘ . $key . ‘}’, $value, $this->content);
}
return $this->content;
}
}
Have fun!