[erledigt]schleifen in template ersetzen
Verfasst: 27.08.2009 22:43
Hallo Liebe Community,
ich schreibe gerade an einem gästebuch mit eigener Template engine. Soweit funktioniert alles, aber jetzt möchte ich gerne schleifen ersetzen lassen bzw. ausführen lassen...
Wie z.b.
Leider habe ich keinen ansatz noch weis ich welche funktionen ich brauche. Meine fragen daher wären, welche funktionen brauche ich dafür bzw. hat jemand einen code teil der eine solche schleife parst`?
Mein template parser ist bis jetzt sehr simple:
Ich habe auch gegooglet, aber leider finde ich nur foren in denen auf fertige engines hingewiesen wird oder es wird unkommentierter code hingeklatsch mit dem ich nicht zurechtkomme. Ich wäre sehr dankbar für ein bisschen brainstorming, evtl. nützliche funktionsnamen oder gute beispiele. Ich hänge an dem problem schon seit tagen und daher geht bei mir nix voran, weil ich nie wirklich viel mit regexp gemacht habe und das rächt sich jetzt.
Ich wünsche einen schönen Abend und hoffentlich auf viele nützliche antworten.
ich schreibe gerade an einem gästebuch mit eigener Template engine. Soweit funktioniert alles, aber jetzt möchte ich gerne schleifen ersetzen lassen bzw. ausführen lassen...
Wie z.b.
Code: Alles auswählen
{foreach smilies as smilie}
<img src="{smilie.img}.jpg"><br />
{/foreach}
Mein template parser ist bis jetzt sehr simple:
Code: Alles auswählen
public function display($template)
{
$code = implode('', file($this->template_path . $template . '.html'));
$code = str_replace('\\', '\\\\', $code);
$code = str_replace('\'', '\\\'', $code);
$code = preg_replace('#\{([a-z0-9\-_]*?)\}#is', '\' . ( ( isset($this->assigns[\'\1\']) ) ? $this->assigns[\'\1\'] : \'\' ) . \'', $code);
eval("echo '$code';");
return true;
}
Ich wünsche einen schönen Abend und hoffentlich auf viele nützliche antworten.