Gimli
Mitglied
Guten Abend
Ich habe momentan das Problem, dass ich mit preg_replace ein paar Platzhalter in einem Dokument ersetzen will, es aber nur funktioniert, wenn ich vorher htmlentities() mache und danach wieder html_entity_decode(). Nur ist das ja etwas performance lastig und ich wollte fragen ob es da ne andere lösung gibt. Hier mal der HTML code:
Und hier der Teil vom preg_replace:
Die Variable $file ist einfach nur ein String der vorher ausgelesen wird aus einer index.tpl
Ich habe momentan das Problem, dass ich mit preg_replace ein paar Platzhalter in einem Dokument ersetzen will, es aber nur funktioniert, wenn ich vorher htmlentities() mache und danach wieder html_entity_decode(). Nur ist das ja etwas performance lastig und ich wollte fragen ob es da ne andere lösung gibt. Hier mal der HTML code:
HTML:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="language" content="{meta_lang}">
<meta name="keywords" content="{meta_keywords}">
<meta name="description" content="{meta_description}">
<meta name="robots" content="{meta_robots}">
<meta name="page-topic" content="{meta_pagetopic}">
<meta name="revisit-after" content="{meta_revisit}">
<meta name="expires" content="{meta_cache}">
<title>{title}</title>
</head>
<body>
<div id="wrapper">
<div id="content">
{content}
</div>
<div id="nav">
{nav}
</div>
</div>
</body>
</html>
Und hier der Teil vom preg_replace:
PHP:
$file = htmlentities($file); // escape the file
foreach($this->vars as $var => $content) { // loops the vars array
$file = preg_replace('/{'.$var.'}/', $content, $file); // replaces the vars in the templates with its contents
}
echo html_entity_decode($file); // remove the escape entities
Die Variable $file ist einfach nur ein String der vorher ausgelesen wird aus einer index.tpl