PHP Syntax Highlighter BBCode ändern?
Verfasst: 25.11.2003 20:31
Hi
ich habe mir das PHP Syntax Highlighter BBCode runtergeladen und es funzt auch wunderbar nur möchte ich es nicht für php nutzen sonndern für andere prog sprachen so auch das funzt super nur wird immer ein <?php vor den und ein ?> nach dem post gemacht kann ich das irgendwie wech bekommen????
ich habe in dem hack selber mal nachgeschaut und habe diese zeile gefunden
wenn ich nun aus
$after_replace = "<?php $after_replace ?>";
einfach das
$after_replace = "$after_replace";
mache wird das Highlightning net mehr angezeigt sondern nur als würde ich nen zitat schreiben
(das wäre ja auch zu einfach gewesen)
kann mir jemand sagen wie ich das ändern kann??
also das das <?php vor und das ?> nach dem post nicht automatisch mit in das Highlightning mit eingefügt wird aber das das farbige Highlightning nicht verloren geht????
vielen dank im vorraus
0lli
ich habe mir das PHP Syntax Highlighter BBCode runtergeladen und es funzt auch wunderbar nur möchte ich es nicht für php nutzen sonndern für andere prog sprachen so auch das funzt super nur wird immer ein <?php vor den und ein ?> nach dem post gemacht kann ich das irgendwie wech bekommen????
ich habe in dem hack selber mal nachgeschaut und habe diese zeile gefunden
{
$code_start_html = $bbcode_tpl['php_open'];
$code_end_html = $bbcode_tpl['php_close'];
$matches = array();
$match_count = preg_match_all("#\[php:1:$uid\](.*?)\[/php:1:$uid\]#si", $text, $matches);
for ($i = 0; $i < $match_count; $i++)
{
$before_replace = $matches[1][$i];
$after_replace = trim($matches[1][$i]);
$str_to_match = "[php:1:$uid]" . $before_replace . "[/php:1:$uid]";
$replacement = $code_start_html;
$after_replace = str_replace('<', '<', $after_replace);
$after_replace = str_replace('>', '>', $after_replace);
$after_replace = str_replace('&', '&', $after_replace);
$added = FALSE;
if (preg_match('/^<\?.*?\?>$/si', $after_replace) <= 0)
{
$after_replace = "<?php $after_replace ?>"; $added = TRUE;
}
if(strcmp('4.2.0', phpversion()) > 0)
{
ob_start();
highlight_string($after_replace);
$after_replace = ob_get_contents();
ob_end_clean();
}
else
{
$after_replace = highlight_string($after_replace, TRUE);
}
if ($added == TRUE)
{
$after_replace = str_replace('<font color="#0000BB"><?php ', '<font color="#0000BB">', $after_replace);
$after_replace = str_replace('<font color="#0000BB">?></font>', '', $after_replace);
}
$after_replace = preg_replace('/<font color="(.*?)">/si', '<span style="color: \\1;">', $after_replace);
$after_replace = str_replace('</font>', '</span>', $after_replace);
$after_replace = str_replace("\n", '', $after_replace);
$replacement .= $after_replace;
$replacement .= $code_end_html;
$text = str_replace($str_to_match, $replacement, $text);
}
$text = str_replace("[php:$uid]", $code_start_html, $text);
$text = str_replace("[/php:$uid]", $code_end_html, $text);
return $text;
}
wenn ich nun aus
$after_replace = "<?php $after_replace ?>";
einfach das
$after_replace = "$after_replace";
mache wird das Highlightning net mehr angezeigt sondern nur als würde ich nen zitat schreiben
(das wäre ja auch zu einfach gewesen)
kann mir jemand sagen wie ich das ändern kann??
also das das <?php vor und das ?> nach dem post nicht automatisch mit in das Highlightning mit eingefügt wird aber das das farbige Highlightning nicht verloren geht????
vielen dank im vorraus
0lli