phpbar.de logo

Mailinglisten-Archive

[php] Funktionen in preg_replace

[php] Funktionen in preg_replace

Nils Meyer php_(at)_phpcenter.de
Sun, 20 May 2001 12:09:23 +0200


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