All pastes #286048 Raw Edit

Unnamed

public text v1 · immutable
#286048 ·published 2006-12-20 08:19 UTC
rendered paste body
 function bbcode($content)
 {
  // Our bbcode function
  $html_array =  array("<b>", "<u>", "<i>", "<font>", "<table>", "<tr>", "<td>", "<script>", "<br>");
  $content = str_replace($html_array, " [ILLEGAL BBCODE CHARACTER] ", $content);
  $php = array("&lt;","&gt;");
  $phper = array("<",">");
  $content = str_replace($php, $phper, $content);
  $content = nl2br($content); // Add a <br /> everytime you hit 'return' or 'enter'
  

  $match = array(
   '#\[b\](.*?)\[\/b\]#se',                                           // Bold Tag
   '#\[i\](.*?)\[\/i\]#se',                                           // Italic Tag
   '#\[u\](.*?)\[\/u\]#se',                                           // Underlined Tag
   '#\[strike\](.*?)\[\/strike\]#se',                                 // Strikeout
   '#\[title\](.*?)\[\/title\]#se',                                   // step title
   '#\[email\](.*?)\[\/email\]#se',                                   // email 1
   '#\[email=(.*?)\](.*?)\[\/email\]#se',                             // email 2
   '#\[align=(left|center|right)\](.*?)\[\/align\]#se',               // align
   '#\[font=(.*?)\](.*?)\[\/font\]#se',                               // font
   '#\[size=(.*?)\](.*?)\[\/size\]#se',                               // size
   '#\[color=(.*?)\](.*?)\[\/color\]#se',                             // color
   
   
   '#\[url=(.*?)\](.*?)\[\/url\]#se',                                 // Url Tag
   '#\[url\](.*?)\[\/url\]#se',                                       // Url Tag
   
   '#\[img\](.*?)\[\/img\]#se',                                       // Image Tag
   
   '#\[quote=(.*?)\](.*?)\[\/quote\]#se',                             // quote
   '#\[code\](.*?)\[\/code\]#se',                                     // Code Tag
   '#\[php\](.*?)\[\/php\]#se',                                       // PHP Tag
   '#\[print\](.*?)\[\/print\]#se',                                   // Print Tag
   '#\[css\](.*?)\[\/css\]#se',                                       // css tag
            
   ############## Smilies #############################      
   
   "':\)'",
   "':p'",
   "':ohmy:'",
   "':blush:'",
   "':angry:'",
   "':!!:'",
   "':cool:'",
   "':huh:'",
   "':blink:'",
   "':biggrin:'",
   "':laugh:'"
  );
        
  $replace = array(
   "'<span class=\"bold\">\\1</span>'",                                 // Bold
   "'<span class=\"italics\">\\1</span>'",                              // Itlaic
   "'<span class=\"underline\">\\1</span>'",                            // Underlined
   "'<span class=\"strikethrough\">\\1</span>'",                        // strikethrough
   "'<h2 id=\"blue\">\\1</h2>'",                                        // title
   "'<a class=\"orange\" href=\"mailto:\\1\">\\1</a>'",                 // email 1
   "'<a class=\"orange\" href=\"mailto:\\1\">\\2</a>'",                 // email 2
   "'<div style=\"text-align: \\1;\">\\2</div>'",                       // align
   "'<span style=\"font-family: \\1;\">\\2</span>'",                    // font
   "'<span style=\"font-size: \\1;\">\\2</span>'",                      // font size
   "'<span style=\"color: \\1;\">\\2</span>'",                          // font color
   
   "'<a class=\"green\" href=\"\\1\" target=\"_BLANK\">\\2</a>'",       // Url
   "'<a class=\"green\" href=\"\\1\" target=\"_BLANK\">\\1</a>'",       // Url
   
   "'<img border=\"0\" src=\"\\1\">'",                                  // Image
   
   /* quote */      "'<table width=\"96%\" align=\"center\"><tr><td><span class=\"bold\">Quote: <i>'.h_username($1).'</i></span></td><tr><td><div id=\"quote\">'.highlight_string(stripslashes(str_replace('<br />', '', wordwrap('$2', 96, '\n'))), true).'</div></td></tr></table>'", // quote
   /* code */       "'<table width=\"96%\" align=\"center\"><tr><td><span class=\"bold\">Code:</span></td><tr><td><div id=\"code\">'.highlight_string(stripslashes(str_replace('<br />', '', wordwrap('$1', 96, '\n'))), true).'</div></td></tr></table>'", // Code
   /* php code */   "'<table width=\"96%\" align=\"center\"><tr><td><span class=\"bold\">PHP Code:</span></td><tr><td><div id=\"php\">'.highlight_string(stripslashes(str_replace('<br />', '', wordwrap('$1', 96, '\n'))), true).'</div></td></tr></table>'", // PHP
   /* print */      "'<table width=\"96%\" align=\"center\"><tr><td><span class=\"bold\"></span></td><tr><td><div id=\"print\">'.stripslashes(str_replace('<br />', '', wordwrap('$1', 96, '\n'))).'</div></td></tr></table>'", // Print
   /* css code */   "'<table width=\"96%\" align=\"center\"><tr><td><span class=\"bold\">CSS:</span></td><tr><td><div id=\"css\">'.show_css(stripslashes(str_replace('<br />', '', wordwrap('$1', 96, '\n')))).'</div></td></tr></table>'",
      
   ######## Smilies BBCODE #######################      

   "<img src=\"http://yoursite.com/images/smilies/smile.gif\">",
   "<img src=\"http://yoursite.com/images/smilies/tongue.gif\">",  
   "<img src=\"http://yoursite.com/images/smilies/ohmy.gif\">",
   "<img src=\"http://yoursite.com/images/smilies/blush.gif\">",
   "<img src=\"http://yoursite.com/images/smilies/angry.gif\">",
   "<img src=\"http://yoursite.com/images/smilies/!!.gif\">",
   "<img src=\"http://yoursite.com/images/smilies/cool.gif\">",
   "<img src=\"http://yoursite.com/images/smilies/huh.gif\">",
   "<img src=\"http://yoursite.com/images/smilies/blink.gif\">",
   "<img src=\"http://yoursite.com/images/smilies/biggrin.gif\">",
   "<img src=\"http://yoursite.com/images/smilies/laugh.gif\">"
  );
                
  return preg_replace($match, $replace, $content); // Replaces the bbcode array with the html array.
}