function BBcode($s, $maxLength = 40) { #$s = unescape($s); $coTime = str_replace(' ', '', microtime()); preg_match_all('/\\[code\\](.+)\\[\\/code\\]/Uis', $s, $result); $s = bbcode_code_start($s, $coTime, $result); # bbcode einheitlicher machen zum bessern pruefen. $s = bbcode_simple_prev($s); #$s = preg_replace ("/(\015\012|\015|\012)/", " \\1", $s); # autoumbruch nach x zeichen #$s = bbcode_autonewline($s, $coTime, $maxLength); $s = htmlentities($s, ILCH_ENTITIES_FLAGS, ILCH_CHARSET); # speziell bilder $s = bbcode_images($s); # speziell zitate ersetzten. $s = bbcode_quote($s); # replace simple $s = bbcode_simple($s); # smilies umwandeln $s = bbcode_smiles($s); $s = preg_replace("/\r\n|\r|\n/", "\n<br />", $s); # code zurueck ersetzten $s = bbcode_code_end($s, $coTime, $result); return $s; }
function bbcode_format($str) { $simple_search = array('/\\[br\\]/is', '/\\[b\\](.*?)\\[\\/b\\]/is', '/\\[i\\](.*?)\\[\\/i\\]/is', '/\\[u\\](.*?)\\[\\/u\\]/is', '/\\[url\\=(http:\\/\\/.*?)\\](.*?)\\[\\/url\\]/is', '/\\[url\\](http:\\/\\/.*?)\\[\\/url\\]/is', '/\\[align\\=(left|center|right)\\](.*?)\\[\\/align\\]/is', '/\\[img\\](http:\\/\\/.*?)\\[\\/img\\]/is', '/\\[mail\\=(.*?)\\](.*?)\\[\\/mail\\]/is', '/\\[mail\\](.*?)\\[\\/mail\\]/is', '/\\[font\\=(.*?)\\](.*?)\\[\\/font\\]/is', '/\\[size\\=(.*?)\\](.*?)\\[\\/size\\]/is', '/\\[color\\=(.*?)\\](.*?)\\[\\/color\\]/is', '/\\[codearea\\](.*?)\\[\\/codearea\\]/is', '/\\[code\\](.*?)\\[\\/code\\]/is', '/\\[p\\](.*?)\\[\\/p\\]/is'); $simple_replace = array('<br />', '<strong>$1</strong>', '<em>$1</em>', '<u>$1</u>', '<a href="$1" rel="nofollow" title="$2 - $1">$2</a>', '<a href="$1" rel="nofollow" title="$1">$1</a>', '<div style="text-align: $1;">$2</div>', '<img src="$1" alt="" />', '<a href="mailto:$1">$2</a>', '<a href="mailto:$1">$1</a>', '<span style="font-family: $1;">$2</span>', '<span style="font-size: $1;">$2</span>', '<span style="color: $1;">$2</span>', '<textarea class="code_container" rows="30" cols="70">$1</textarea>', '<pre class="code">$1</pre>', '<p>$1</p>'); // Convert newlines to breaks. $str = nl2br($str); // Do simple BBCode's $str = preg_replace($simple_search, $simple_replace, $str); // Do <blockquote> BBCode $str = bbcode_quote($str); return $str; }