<a href="http://www.wangjinhai119.com/zmjc/"><u><a href="http://www.wangjinhai119.com">服务器</a>托管</u></a>,这样就造成了关键词超链接重复替换。
关键词超链接重复替换解决方案:
这样的嵌套重复替换明显是一个BUG,我们修改下程序解决这个重复替换bug,方法:先替换比较短的关键词,然后再替换长的关键词,如果先去替换“服务器”这个关键词,那么“服务器托管”就不会去替换了。
修改代码方法:
1、找到include/arc.archives.class.php这个文件,在1226行代码,如下:
1
//高亮专用, 替换多次是可能不能达到最多次
2
function
_highlight(
$string
,
$words
,
$result
,
$pre
)
3
{
4
global
$cfg_replace_num
;
5
$string
=
str_replace
(
'"'
,
'"'
,
$string
);
后面增加一段代码,变成即可
1
//高亮专用, 替换多次是可能不能达到最多次
2
function
_highlight(
$string
,
$words
,
$result
,
$pre
)
3
{
4
global
$cfg_replace_num
;
5
$string
=
str_replace
(
'"'
,
'"'
,
$string
);
6
uasort(
$words
,create_function(
'$a, $b'
,
'return strlen($a)>strlen($b);'
));
如果本文对你有帮助,欢迎打赏本站