$text = preg_replace("/\[code\](.*)\[\/code\]/Usi", "<div class=\"code\">".highlight_string("\\1")."</div>", $text);
//kann nicht funktionieren
Wie kann ich den String, der zwischen den codes - (.*) - hightlighten?
danke
$text = preg_replace("/\[code\](.*)\[\/code\]/Usi", "<div class=\"code\">".highlight_string("\\1")."</div>", $text);
//kann nicht funktionieren
Wie kann ich den String, der zwischen den codes - (.*) - hightlighten?
danke
$text = preg_replace("/\[code\](.*)\[\/code\]/Usi", "\\1", $text);
$text = "<div class=\"code\">".highlight_string($text)."</div>";
highlight_string() gibt standardmäßig den text an den Browser aus. d.h. man muss zusätzlich den zweiten Parameter auf true setzen, damit die Ausgabe via “return” zurückgegeben wird und der Text dann in der variable landet.
$text = preg_replace("/\[code\](.*)\[\/code\]/Usi", "\\1", $text);
$text = "<div class=\"code\">".highlight_string($text, true)."</div>";
//Edit so klappt das ja auch nicht >_> momento
//Edit 2:
[code]<?php
$text = 'dies ist mein php code:
<?php
echo \'blubb\';
for($n=0;$n<count($array);$n++){
echo "blabb ";
echo $n."\n";
}
?>
und noch einer:
<?php
if($xyz=="abcd"){
echo "Hans Wurst";
}
?>
';
preg_match_all(’/[code](.*)[/code]/Usi’, $text, $ret, PREG_SET_ORDER);
foreach($ret as $r){
$text = str_replace($r[0], highlight_string($r[1],true),$text);
}
echo nl2br($text);
?>[/code]
//Edit 3:
ist ne unschöne Methode… ich empfehle dir:
christian-seiler.de/projekte/php/bbcode/
Damit funktioniert es jedenfalls so wie man es haben will
mfg Balmung