Hallo Razor,
Das geht leider gar nicht, weil dann will er ja den PHP Code auch parsen, was natürlich unweigerlich zu einer Fehlermeldung führt.
stimmt (ich habe es mal ausprobiert) - ich habe aber noch eine andere Idee :-) - verwende preg_replace_callback:
$text = preg_replace_callback("~[PHP](.*?)[/PHP]~i","hs",$text);
wobei der zweite Parameter einen Funktionsnamen erwartet. Die Funktion hs (du kannst ja einen aussagekräftigeren Namen vergeben) sieht so aus:
function hs($m){ return highlight_string($m[1],true); }
ggf. musst du eben noch innerhalb der Funktion hs Sachen die dir nicht gefallen (z.B. <font> durch <span> o.ä.) ersetzen. Wichtig ist der 2. Parameter der Funktion highlight_string der dafür sorgt, dass die Funktion den farbigen code zurück-, und nicht direkt ausgibt (das funktioniert allerdings erst ab Version 4.2.0).
Grüße aus Nürnberg
Tobias
--
Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|