Я использую следующую функцию для поиска слов и раскраски их внутри текста. Он отлично работает, за исключением немецких символов (ä, ë, ß и т. Д.). Я уже пытался кодировать в utf, декодировать, проверял свои метатеги и все остальное, но проблема не в кодировке, так как они правильно отображаются на сайте, они просто не «окрашены» этой функцией:
function highlight($keyword, $input, $linktext, $color){
$text = $input;
$word = $keyword;
$text = str_ireplace(" ".$word, ' <span id="">' . $word . '</span>', $text);
$iteration = 1;
while (true) {
$text = preg_replace('/<span.id="">' . $word . '<\/span>/imsxU', '<span style="background:'.$color.'" class="keyword" id="link' .
$iteration . "\" onclick=\"setLink2('$keyword','$linktext',$iteration)\">" . $word . '</span>', $text, 1, $count);
if (!$count) {
break;
}
$y++;
$iteration++;
}
return $text;
}
Есть идеи, как мне этого добиться? Я также попытался заменить их, но немецкие слова должны появиться так, как они есть в тексте, так что ничего не стоит = /