Hab vorhin mal schnell angefangen ne Funktion zu proggen, damit ich in meinen Template-Dateien solche Sachen wie {name} gegen z.b. ne Variable tauschen kann. Ist aber natürlich nervig, wenn man jede zu ersetzende Stelle einzelnd angeben muss usw. Also will ich das ganze jetzt so machen, dass ich die ganzen zu ersetzenden Platzhalter in einen String packe und mit nem Trennzeichen (in diesem fall ";;") trenne und das gleiche mit den Texten, welche die Platzhalter überschreiben. Noch schön in ne Funktion verpackt dann schauts bei mir so aus ^^ :
Code:
function template($file, $search, $replace) { $file = file($file); $search = explode(';;', $search); $replace = explode(';;', $replace); $searchcount = count($search); $replacecount = count($replace); IF ($searchcount != $replacecount) { echo "Hinweis: Arrays haben nicht gleich viele Elemente."; } FOR($i = 0; $i >= $searchcount; $i++) { $file = str_replace($search[$i], $replace[$i], $file); } $file = implode($file); echo $file; }
jo, und so sollte es dann aufgerufen werden:
Code:
template('test.htm','{name}','Mister X');
Code:
template('test.htm','{name};;{rollmops}','Mister X;;Fisch');
Wäre dankbar, wenn Ihr da ne Lösung wisst
Einen Kommentar schreiben: