UBB代码的编写

一、什么是UBB代码
     1)UBB代码是HTML的一个变种,是Ultimate Bulletin Board (国外一个BBS程序,国内也有不少地方使用这个程序)
     采用的一种特殊的TAG。UBB代码很简单,虽然功能很少,但基本实现了我们常用的一些功能.
     2)优点:
            1、相对HTML安全性高;
            2、使用简单,方便记忆;
            3、自定义功能强大,扩展性好;
           4、有效较少数据库存储代码
     3)缺点:
           1、排版功能弱
           2、不允许交叉使用
     4)例子:[url]www.qq.com[/url]   [b]中文[/b]  [swf]../flash/demo.swf[/swf]
二、UBB的运行过程
     1)UBB Code-->解析转换-->HTML code
     2)常使用的两种模式:
        UBB-->DB-->解析-->输出
        UBB-->解析-->DB-->输出
三、介绍几种简单的UBB代码
     1)[url][/url]   /\[url\](.*)\[\/url\]/i   <a href=></a>
        [b][/b]       /\[b\](.*)\[\/b\]/i       <b>
        [img][/img]   /\[img\](.*)\[\/img\]/    <img src=>
     2)例子:$ubb=preg_replace("/\[url\](.*)\[\/url\]/","<a href=\\1 target=_blank>\\1</a>",$str);  (其中\1代表正则表达式的第一个单元,\2代表第二个,放在()括号内就代表一个单元)
四、编程实例
     1)取一个简单的 添加链接 和 加粗 的UBB代码
      <?php
     function get_ubb($str){
             //链接UBB
             $str=preg_replace("/\[url\](.*)\[\/url\]/","<a href=http://\\1 target=_blank>\\1</a>",$str);
             //加粗UBB
             $str=preg_replace("/\[b\](.*)\[\/b\]/","<b>\\1</b>",$str);
             return $str;
     }
     $str="sdyhfg[url]www.qq.com[/url]as[b]dw中文[/b]2sdf";
     echo get_ubb($str);
     ?>
       输出的html代码如下:
       sdyhfg<a href=http://www.qq.com target=_blank>www.qq.com</a>as<b>dw中文</b>2sdf
posted @ 2012-03-05 14:53  gxldan  阅读(347)  评论(0编辑  收藏  举报