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);
}
}
私のコードに間違いがあったかどうかを提案してください。