Вызывать примерно так: $str = preg_replace_callback(\'/
(.+)
/si\', \'SyntaxHighlighter\', $str);
function SyntaxHighlighter($code) {
$decimal = array('[' => '[', ']' => ']', ':' => ':', '(' => '(', ')' => ')'); // Против bb кодов и простеньких смайлов
$code = trim($code[1]);
$code = html_entity_decode($code, ENT_QUOTES, 'UTF-8');
$code = preg_replace('/\r/si', null, $code);
$code = '<div class="code"><pre>'.highlight_string($code, true).'</pre></div>';
$code = strtr($code, $decimal);
return $code;
}