discuz论坛archiver解析UBB代码
代码发之前说的话:为了研究让archiver解析UBB代码,我学PHP二个月了.累...终于知道原来是用正则表达式来替换的.这代码公布出来给有用的朋友.
修改文件:\archiver\thread.inc.php
找到代码:
if($thread['jammer']) {
$post['message'] = preg_replace("/\
/e", "jammer()", $post['message']);
}
复制代码
下面加:
//UBB解析开始
$neter_mo=array(
"/\[b\](.+?)\[\/b\]/is",//解释加粗B标签
"/\[i\](.+?)\[\/i\]/is",//解释I标签
"/\[url=(.+?)\](.+?)\[\/url\]/is",//解释URL
"/\[url](.+?)\[\/url\]/is",//解释URL
"/\[img\](.+?)\[\/img\]/is",//解释图片
"/\[color=(#?[0-9a-f]{6}|[a-z]{3,})\](.+?)\[\/color\]/is",//解释字体颜色
);
$neter_str=array(
"\\1",//替换为加粗B标签
"\\1",//替换为I标签
"\\2",//替换为URL
"\\1",//给在论坛乱发连接的人整个nofllow
"",//替换为图片
"\\2",); //替换为字体颜色
$post['message'] = preg_replace($neter_mo,$neter_str,$post['message']);
//UBB解析OK啦
复制代码
短短的几行代码是我二个月的学习成果啊....分享给seo优化的朋友!!
原创:www.neter8.com 网络人站长论坛