Здравствуйте!
Поиск с помощью Lucene:
setlocale(LC_ALL, 'ru_RU.UTF-8');
Lucene\Analysis\Analyzer\Analyzer::setDefault(
new Lucene\Analysis\Analyzer\Common\Utf8\CaseInsensitive());
$index = Lucene\Lucene::open($searchIndexLocation);
$searchResults = $index->find($validatedQuery['searchQuery']);
Затем должны подсвечиваться слова по которым производился поиск:
\ZendSearch\Lucene\Search\QueryParser::setDefaultEncoding('UTF-8');
$doc = Html::loadHTML($high, false, $defaultEncoding = 'UTF-8');
$doc->highlight($validatedQuery['searchQuery'], $colour = '#66ffff');
$highlightedHTML=$doc->getHTMLBody();
С английским текстом все нормально работает, а вот с русские слова либо не подсвечиваются вовсе, либо подсвечиваются отдельные буквы в других несовпадающих с запросом словах. Причем если запрос начинается с заглавной русской буквы, то вообще поиск не работает. В чем может быть дело? Спасибо.