¿Como lo puedo hacer?
Código PHP:
public function Message($string) {
$string = htmlentities($string);
$to_search = array(
'/\[b\](.*?)\[\/b\]/is',
'/\[i\](.*?)\[\/i\]/is',
'/\[u\](.*?)\[\/u\]/is',
'/\[url\=(.*?)\](.*?)\[\/url\]/is',
'/\[url\](.*?)\[\/url\]/is',
'/\[align\=(left|center|right)\](.*?)\[\/align\]/is',
'/\[img\](.*?)\[\/img\]/is',
'/\[mail\=(.*?)\](.*?)\[\/mail\]/is',
'/\[mail\](.*?)\[\/mail\]/is',
'/\[font\=(.*?)\](.*?)\[\/font\]/is',
'/\[size\=(.*?)\](.*?)\[\/size\]/is',
'/\[color\=(.*?)\](.*?)\[\/color\]/is',
'/\[quote\=(.*?)\](.*?)\[\/quote\]/is',
'/\[quote\](.*?)\[\/quote\]/is',
);
$to_replace = array(
'<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 style="max-width: 700px; max-height: 700px;" 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>',
'<div id="bbcode_quote"><div id="bbcode_quote_cited">Cita de: $1</div><div id="bbcode_quite_message">$2</div></div>',
'<div id="bbcode_quote"><div id="bbcode_quote_cited">Cita</div><div id="bbcode_quite_message">$1</div></div>',
);
// Reemplazar
$string = preg_replace ($to_search, $to_replace, $string);
// De paso hacemos que convierta los salto de línea en < /br>
$string = nl2br($string);
$string = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)','<a href="\1">\1</a>', $string);
$string = eregi_replace('(((f|ht){1}tps://)[-a-zA-Z0-9@:%_+.~#?&//=]+)', '<a href="\1">\1</a>', $string);
// Retornamos el string con los BBCode pasados a tags HTML.
return $string;
}