我的查询结果集中有一个字符串p12200
。用户在搜索文本中的任何位置搜索p-122-0
或p122-0
嵌入破折号,但我想p1220
在我们的前端突出显示文本。我在数据库中使用 replace 关键字,它返回正确的结果集,但我用颜色突出显示结果集。
我的颜色突出显示功能是:
function strreplace($searchstring, $result) {
if(stripos($searchstring,'-')===false) return str_ireplace($searchstring, "<span class='highlightcolor'>".$searchstring."</span>", $result);
else {
if(stripos($result,'-')===false) return str_ireplace(str_ireplace('-','',$searchstring), "<span class='highlightcolor'>".str_ireplace('-','',$searchstring)."</span>", $result);
elseif(stripos($result,'-')!==false) return str_ireplace(str_ireplace('-','',$searchstring), "<span class='highlightcolor'>".$searchstring."</span>", $result);
}
}
如果我的代码有任何错误,请提出建议。