source/function/function_post.php文件下的 messagecutstr($str, $length = 0, $dot = ' ...') 函数- $bbcodes = 'b|i|u|p|color|size|font|align|list|indent|float';
- $bbcodesclear = 'email|code|free|table|tr|td|img|swf|flash|attach|media|audio|payto'.($_G['cache']['bbcodes_display'][$_G['groupid']] ? '|'.implode('|', array_keys($_G['cache']['bbcodes_display'][$_G['groupid']])) : '');
-
- $str = strip_tags(preg_replace(array(
- "/\[hide=?\d*\](.*?)\[\/hide\]/is",
- "/\[quote](.*?)\[\/quote]/si",
- $language['post_edit_regexp'],
- "/\[url=?.*?\](.+?)\[\/url\]/si",
- "/\[($bbcodesclear)=?.*?\].+?\[\/\\1\]/si",
- "/\[($bbcodes)=?.*?\]/i",
- "/\[\/($bbcodes)\]/i",
- ), array(
- "[b]$language[post_hidden][/b]",
- '',
- '',
- '\\1',
- '',
- '',
- '',
- ), $str));
复制代码 通过此代码,过滤标签,而如果 新增标签 [pay]xxxxxxxx[/pay],通过此代码后,就成了 xxxxxxxx[/pay],而不是 [pay]xxxxxxxx[/pay],此算是BUG吧!
新设标签如果是 b、i、u、p 字符开头的,都会出现这种问题!
|