function parse($text) { $replacer = array( "[i]" => "", "[/i]" => "", "[b]" => "", "[/b]" => "", "[/size]" => "", "[/color]" => "", "[code]" => "
", "[/code]" => "
", "[small]" => "
", "[/small]" => "
", "[quote]" => "
", "[/quote]" => "
", "[list]" => "", ); $fixer = array( "[" => '\\[', "]" => '\\]', "*" => '\\*', "/" => '\/', ); foreach ($replacer as $key => $val) { $thekey = $key; $keys = str_replace(array_keys($fixer), $fixer, $thekey); $text = eregi_replace($keys, $val, $text); } $newstr = $text; $newstr = preg_replace("/\[url=(.+)\]([^[]+)\[\/url\]/i", "\${2}", $newstr); $newstr = preg_replace("/\[size=(.+)\]/i", "", $newstr); $newstr = preg_replace("/\[color=(.+)\]/i", "", $newstr); $newstr = preg_replace("/\[quote=(.+)\]/i", "\${1}
", $newstr); $newstr = preg_replace("/\[url\]([^[]+)\[\/url\]/i", "\${1}", $newstr); return nl2br($newstr); }