Mailinglisten-Archive |
Hallo,
ich muss in einem Script die in einer Variable befindlichen PHP-Codes
ausführen und die Ausgabe wieder in die Variable einsetzen.
zur Ausgabe des Codes habe ich die folgende Funktion geschrieben:
function evalcode($code) {
ob_start();
eval($code);
$ausgabe = ob_get_contents();
ob_end_clean();
}
Die Funktion funktioniert ohne weiteres.
Allerdings scheitere ich an dem Versuch, mittels preg_replace die
PHP-Codes in der Variable durch die Ausgabe zu Ersetzen:
$markup=preg_replace("=<\?php(.*)\?>=i",evalcode("\\1"),$markup);
Das Resultat dieses Aufrufes ist, das die PHP Codes aus dem Script
entfernt sind, was allerdings nicht mein Ziel war. Der Inhalt der
Variable $markup:
<? include_once "page.php"; ?>
<keywords>test</keywords>
<headline>hehe</headline>
<title>test</title>
<content>test
<php><?php echo("Ich werd' hier gleich zum Elch!"); ?></php>
kein PHP Code mehr ab hier.
</content>
Vielleicht weiss jemand von euch Rat...
mit freundlichen Grüßen
Nils Meyer
--
Eichenweg 7, 21745 Hemmoor
phoneto: +49 (0)4771-689880 | mobilephoneto: +49(0)174 20 34 08 5
faxto: +49 (0) 89-55 29 83-5590
mailto:meyer_(at)_wmc24.de | http://www.webmasterchannel.de
php::bar PHP Wiki - Listenarchive