A-A+

PHP中UBB的使用

2012年11月21日 编程技术 暂无评论

在一些小型论坛或者是小型的评论系统中,经常会遇到“支持UBB”之类的术语,其实UBB代码是HTML的一个变种,通过程序自定义我们的标签,比如“[a]PHP中UBB的使用[/a]”这样的标签,其实质就是利用技术查找[a][/a]标签,将其替换成的标准html,说白了,就是将 标准的 html 标记通过技术手段使其简化,其输出出来的结果还是标准的 html。

明白了 ubb 的原理,那么再制作一个简单的 ubb 编辑器就不难了,和 fck 之类的编辑器比较起来,ubb 代码最大的优点就是代码简单,功能很少,简单的ubb只需要一个文件,而且 ubb 标签可以自己来定义,更改起来很方便,在 php 中就是利用替换函数就可以将 html 进行标签化,输出时进行标签的转化,下面是一个 php 中 UBB 使用的源码,仅一个文件,就实现了 ubb 编辑器,网络上有许多变种的 UBB 代码,核心的原理基本上都是一样的。

小说明:[a]https://www.xiaohuboke.com[/a] 实际标准的html为 <a href=https://www.xiaohuboke.com >https://www.xiaohuboke.com</a>,UBB 编辑器将 <a href=https://www.xiaohuboke.com >https://www.xiaohuboke.com</a> 进行了标签化,也就是 [a]https://www.xiaohuboke.com[/a],通过 ubb 标签,代码是不是简洁了许多。

PHP简单UBB界面预览:

[code lang="php"]
\\1",$s
tr);
//QQ号码UBB
$str = preg_replace("/\[qq\]([0-9]*)\[\/qq\]/i", "\"QQ\${1}\"", $str);
//[]超链接
$str=preg_replace("/\[img\](.*?)\[\/img\]/i","",$s
tr);
return $str;
}
if($_POST['sub'])
{
echo $ss=get_ubb($_POST['text']);
}
?>


添加A标签
添加QQ标签
添加IMG标签


[/code]

给我留言