function highlight($content,$key)
{
//ini_set('memory_limit', '32M');
set_time_limit(0);
$k_fi=substr($key,0,1); //取得关键词第一个字符
$k_len=strlen($key); //计算关键词字数
$l_len=strlen($content); //计算备查文章字数
for($l_n=0;$l_n<$l_len;$l_n++) //根据备查文章字数开始循环
{
$l_s=substr($content,$l_n,1); //取得备查文章当前字符
if($l_s=="<") { //如果这个字符是标签的开始的话
while($l_s!=">") { //我们就寻找这个标签的关闭
$con.=$l_s; //导入结果
$l_n++; //当然要开始取备查文章的下一个字符
$l_s=substr($content,$l_n,1);
}
$con.=$l_s;
} elseif($l_s==$k_fi) { //如果这个字符与关键词第一个字符相同的话
$l_key=substr($content,$l_n,$k_len); //取备查文章当前位置是否匹配关键词
if($l_key!=$key){
$con.=$l_s; //导入结果
}else { //如果匹配
$l_n+=$k_len-1; //计数跳过相应字数
$con.="<span style=\"color:hsl(0, 100%, 40%);\">";
$con.=$key;
$con.="</span>"; //加亮关键词
}
}else {
$con.=$l_s; //导入结果
}
}
return $con;
}