Heim >Backend-Entwicklung >PHP-Tutorial >自己写的一个UBB转换的函数_PHP

自己写的一个UBB转换的函数_PHP

WBOY
WBOYOriginal
2016-06-01 12:32:021121Durchsuche

function ubb2xhtml($ubb)
{
$flash= codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" width="%1\$d" height="%2\$d">




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)\](.*?)\[/\1\]%s',
'%\[h([1-6])\](.*?)\[/h\1\]%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=([aAiI1]) start=([a-zA-Z1-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',
'自己写的一个UBB转换的函数_PHP',
'自己写的一个UBB转换的函数_PHP',
'sprintf("$flash", "\1", "\2", "\3")',
'\2\1>',
'\2\1>',
'


\n',
'\2',
'\2',
'\2',
'
\2',
'
\2',
/*
'
    \1
',
'
    \2
',
'
    \1
',
'
    \3
',
'
  • \1
  • ',
    */
    "\n$2
    ",
    "\t$1\n",
    "\t\n$2\t\n",
    "\t\t$1\n",
    "\t\t$1\n",
    '
    发布者备注
    \1
    ',
    '
    引用(来源: \1)
    \2
    ',
    '代码
    \1
    ',
    '  ',
    );
    if( preg_match('%\[table=(.*?)\/table\]%s', $ubb, $tablecells) ) //如果有表格, 先去除单元格之间的多余空白
    {
    $bb=preg_replace('%\]([\r\n\s]*)\[%si', '][', $tablecells[1]);
    $ubb=str_replace($tablecells[1], $bb, $ubb);
    }
    $html = preg_replace($match, $replace, nl2br(htmlspecialchars($ubb)));
    $html = preg_replace('/
    \s* return $html;
    }
    Stellungnahme:
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn