首页 / PHP / 自己写的一个UBB转换的函数_PHP
自己写的一个UBB转换的函数_PHP
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了自己写的一个UBB转换的函数_PHP,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2093字,纯文字阅读大概需要3分钟。
内容图文
function ubb2xhtml($ubb){
$flash=<<
END;
$match = array
(
'%\[url=([^\s] )\](.*?)\[/url\]%s',
'%\[email=([^\s]) \](.*?)\[/email\]%i',
'%\[img width=(\d ) height=(\d )\](.*?)\[/img\]%s',
'%\[img=([^\s] )\/\]%s',
'%\[flash width=(\d ) height=(\d )\](.*?)\[/flash\]%se',
'%\[(b|i|u|strike|sup|sub)\](.*?)\[/\]%s',
'%\[h([https://www.gxlcms.com/1-6])\](.*?)\[/h\]%s',
'%\[hr\/\]%s',
'%\[color=([^\s] )\](.*?)\[/color\]%s',
'%\[font=([^\"] )\](.*?)\[/font\]%s',
'%\[size=([^\s] )\](.*?)\[/size\]%s',
'%\[align=(center|right|left)\](.*?)\[/align\]%s',
'%\[valign=(middle|top|bottom)\](.*?)\[/valign\]%s',
/*
'%\[ul\](.*?)\[/ul\]%s',
'%\[ul=(circle|disc|square)\](.*?)\[/ul\]%s',
'%\[ol\](.*?)\[/ol\]%s',
'%\[ol type=([aAiIhttps://www.gxlcms.com/1]) start=([a-zA-Zhttps://www.gxlcms.com/1-9])\](.*?)\[/ol\]%s',
'%\[li\](.*?)\[/li\]%s',
*/
'%\[table=([^\s] ?)\](.*?)\[/table\]%s',
'%\[caption\](.*?)\[/caption\]%s',
'%\[tr=([^\s] ?)\](.*?)\[/tr\]%s',
'%\[th\](.*?)\[/th\]%s',
'%\[td\](.*?)\[/td\]%s',
'%\[note\](.*?)\[/note\]%s',
'%\[quote=(.*?)\](.*?)\[/quote\]%s',
'%\[code\](.*?)\[/code\]%s',
'%[ ]{2}%s', // make double-spaces truly double-spaces!
);
$replace = array
(
'\2',
'\2',
'',
'',
'sprintf("$flash", "", "\2", "")',
'<>\2>',
'
'
\n',
'\2',
'\2',
'\2',
'\2',
'\2',
/*
'
'
- \2
'
'
'',
*/
"
"\t
"\t
"\t\t
"\t\t
'发布者备注
',
'引用(来源: )
\2',
'代码',
' ',
);
if( preg_match('%\[table=(.*?)\/table\]%s', $ubb, $tablecells) ) //如果有表格, 先去除单元格之间的多余空白
{
$bb=preg_replace('%\]([\r\n\s]*)\[%si', '][', $tablecells[https://www.gxlcms.com/1]);
$ubb=str_replace($tablecells[https://www.gxlcms.com/1], $bb, $ubb);
}
$html = preg_replace($match, $replace, nl2br(htmlspecialchars($ubb)));
$html = preg_replace('/
\s*<(td|th|tr|table|ul|ol|li)/m', "\n".'<', $html);
return $html;
}
内容总结
以上是互联网集市为您收集整理的自己写的一个UBB转换的函数_PHP全部内容,希望文章能够帮你解决自己写的一个UBB转换的函数_PHP所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。