0

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);

 }

}

私のコードに間違いがあったかどうかを提案してください。

4

1 に答える 1