Als ich noch aktiv PHP genutzt habe ich so verfahren wie Amun Ra, bloss dass ich das ganze so gebaut habe dass es dich vom Handling wie ne spezielle Template Engine war.
Wobei das Kernstück der TemplateEngine nur ca. das gemacht hat:
PHP:
public function fetch()
{
extract($this->vars);
ob_start();
require $this->file;
$contents = ob_get_contents();
ob_end_clean();
return $contents;
}
Das HTML sah so aus wie das von Amun Ra, bloss das ich die Short Tags verwendet habe.
Nur dass ich z.B.: {$foo} anstatt habe ist mir der dafür notwendige Overhead nicht wert gewesen.
Original von TheDarkRose
Wobei ich auch am überlegen bin ob ich dem Browser einfach eine xml schicke und diese über XSLT transformieren lasse. Was haltet ihr davon?
Das habe ich mal eine Zeit lang verfolgt. Fande das an sich auch eine sehr feine Sache. Was mich auch sehr gereizt hatte, war das der Quellcode im Browser (solang man es clientseitig transformieren lässt) richtig fein aussieht. Aber lässt man es clientseitig transformieren machten (vor ca. 2 Jahren war das) nicht alles Browser das selbe (wer hätte das gedacht?) und es war teilweise sogar unmöglich das ganze optimal umzusetzen.
Dann habe ich das ganze serverseitig transformieren lassen was an sich super funktioniert hatte. Besonders da ich durch 3 verschiedene XSLTs 3 verschiedene Ansichten zur Verfügung stellen konnte: Normal, Druckansicht, RSS Feed
Aber um das ganze wirklich als Templateersatz zu nutzen war mir der Aufwand dann zu groß was die nötige Schreibarbeit anbelang.
Wobei die Templateübergabe beim clientseitigen transformieren, soweit ich mich recht erinnere, sogar extremer rotz war. Das transformieren via PHP bot da eine schönere Variante.
Würde ich selber jetzt nochmal vor die Frage gestellt werden was ich für eine Templateengine nutzen sollte, dann würde ich mich ganz klar für eine Eigenentwicklung entscheiden. Denn die Templateengines die ich bisher gesehen habe waren entweder nicht die Richtung wie ich wollte oder hatten viel zu viel, oft überflüssige, Funktionen und wenn ich was hasse sind es überflüßige Funktionen ;)
so long,
n26