Templatescripting: Wie realisiere ich Schleifen bwz. Anweisungen?

TheSkaterFriend

Grünschnabel
Schönen Tag,

Da ich die Suchfunktion nun schon heiss gelaufen ist aber ich noch immer nichts nützliches finden konnte, erstelle ich hier ein Thema mit meinem Problem.

Ich habe versucht mir selbst eine Template-Klasse zu schreiben, was ja auch sehr gut läuft. Jedoch habe ich bis jetzt "nur" das parsen bestimmter Zeichen (z.B %name% wird zu TheSkaterFriend). Ich habe mir lange gedanken gemacht wie ich das parsen von Schleifen bwz. Anweisungen realisieren soll.

Meine Frage dabei, wie soll ich in dem Template (die .html-Datei die geparsed wird) die Schleifen bwz. Anweisungen schreiben. Ich habe ja schon einiges gesehen, wie: <-- BEGIN artikel --> o.ä aber dann weiss ich nicht wie ich in der Klasse das parsen realisieren soll.

Ich möchte noch dazu sagen, dass ich kein System wie SmartY o.ä verwenden möchte, da ich mich weiterbilden will, dass heisst, Verweise zu Templatesystemen sind zwar sehr sehr nett, jedoch helfen sie mir in diesem Fall nicht.

Ich danke für das lesen, noch größeren danke für die Hilfe.

Tschau

TheSkaterFriend
 
Also wenn du keine anderen Systeme nutzt (ich dir darin keine Hilfe sein kann), dann frage ich mich, warum du diese Systeme nicht gerade auf dein Problem hin untersuchst um herauszufinden, wie dein Problem evtl. gelöst werden kann?

Ein solch neues Rad kannst du nicht erfunden haben oder ;)
 
Ich frage mich auch ständig, wieso jemand eine eigene Template Engine schreiben muss, wobei es doch schon genug, auch wirklich gute, gibt. Wie z. B.:

Ich selbst habe auch meine eigene Template-Engine, weil ich mich dann
1.) nicht in fremden Quellcode hineinfitzen muss,
2.) das System genau meinen Anforderungen entspricht und
3.) ich weiterhin alle Möglichkeiten der Anpassung des Systems besitze

Genauso gut könnte man fragen: Wieso werfen hunderte Unternehmen CM-Systeme auf den Markt, obwohl es schon so viele gute gibt?

Sicherlich muss man nicht auf Krampf immer eigene Dinge entwickeln, manchmal ist es allerdings erforderlich.

mfg, snuu
 
Danke für die bis jetzt vorhantenen Beiträge.

Mir wäre jedoch mehr geholfen wenn, etwas zu meinen Problem gepostet wird. Ich sagte schon das ich es sehr sehr nett finde wenn man Links zu anderen Templatesystemem postet, jedoch hilft mir das in der Sache nichts. Genau habe ich auch gesagt das ich keine anderen Templatesysteme verwenden will, weil ich mich weiterbilden will.

Und snuu hat auch interessante beispiele gezeigt, wieso man selbst ein Templatesystem schreiben will.

Wäre super nett, wenn ihr mir weitere Hilfe gebt.

@saila: Danke dir.

Tschau

TSF
 
@TSF: Gut, aber dennoch kann man ja bei verbreiteten und erprobten Templatesystemen einfach schauen wie etwas umgesetzt wurde. Weiterbilden heisst ja nicht alles selbst erfinden sondern auch sehen verstehen und gegebenenfall modifiziert umsetzen.
 
Original geschrieben von Ben Ben
@TSF: Gut, aber dennoch kann man ja bei verbreiteten und erprobten Templatesystemen einfach schauen wie etwas umgesetzt wurde. Weiterbilden heisst ja nicht alles selbst erfinden sondern auch sehen verstehen und gegebenenfall modifiziert umsetzen.

Ist mir klar, nur wenn gerade einer vor dem gleichen Problem o.ä stand, kann er es ja hier schreiben. Natürlich kann ich nicht verlangen das hier das Konzept dafür gepostet wird, schön wäre es drotzdem.

Tschau

TSF
 
Zum Parsen:
Ich denke da gibt es mehrere Möglichkeiten. Du könntest mit Hilfe von regulären Ausdrücken die entsprechenden Blöcke finden oder auch mit Hilfe von [phpf]strstr[/phpf] oder ähnlichen Funktionen. Anschließend wird in einer Schleife Block für Block mit INhalt gefüllt und ausgegeben.
 
Zurück