minimalistischer Template-Parser will nicht so wie ich :)
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
angewendet code
array
ausgabe
code
ersetzen
festlegen
file
folgenden quellcode
folgender code
funktion
inhalt
laden
platzhalter
versuch
vorschlag
zeile
-
Hi, ich bins wieder :D
Tja, also ich hab mir gedacht \"Versuchste dich auch mal an so nem kleinen Template-Parser, is bestimmt nich falsch\". Sooo und ja, hab ich nun gemacht, aber bisher wird von 2 Platzhaltern immer nur der zweite ersetzt. Der erste bleibt wie er lustig ist und ich weiß einfach nicht wieso.
Es geht sich um folgenden Quellcode:
$template = file(\'template/content.tpl\'); //Laden des Templates $vars = array(\'{headline}\' => \'Ueberschrift\', \'{content}\' => \'Inhalt\'); //festlegen der Platzhalter und durch was es ersetzt werden soll for($i=0;$i < count($template);$i++) //Template wird zeilenmäßig durchlaufen { foreach($vars as $key => $value) { $parsing_template[$i] = ereg_replace(strtoupper($key),$value,$template[$i]); //Jede Zeile des Templates wird nach Platzhalter durchsucht und ggf. Platzhalter ersetzt } } $parsed_template = implode(\'\',$parsing_template); //zusammenschnipseln des Templates. echo $parsed_template; //ausgabe
Die Ausgabe ist dann folgender Code:
<div class=\"content\"> <div class=\"content_headline\"> {HEADLINE} </div> <div class=\"content_text\">Inhalt</div> </div>
Bestimmt irgendwas simples, auf das ich nicht komme -.-
Beitrag geändert: 9.5.2008 0:55:30 von shakal -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
hallo shakal,
versuch mal das {HEADLINE} durch {headline} zu ersetzen.
nur so ein vorschlag. hab sowas noch nie selber geschrieben.
gruß
chrasch
Das ist es nicht ;) Hab ja nicht umsonst beim Ersetzen die Funktion strtoupper($key) angewendet ;) -
for($i=0;$i <= count($template);$i++) // oder for($i=0;$i < count($template)+1;$i++)
ggf. eignen sich foreach bei Arrays eher.
Beitrag geändert: 9.5.2008 12:06:12 von trueweb -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage