Я использую Zend_Search_lucene 1.12 с codeignter для поиска на английском языке & Арабские данные, английский работает хорошо, но я получаю неправильные результаты с арабским.
это мой код
Zend_Search_Lucene_Analysis_Analyzer::setDefault(
new Zend_Search_Lucene_Analysis_Analyzer_Common_Utf8Num_CaseInsensitive ());
$index = Zend_Search_Lucene::create($this->_INDEX_PATH_CONST);
$document->addField(Zend_Search_Lucene_Field::Text('video_ar_title', strtolower($record['video_ar_title'])), 'utf-8');
$index->addDocument($document);
$index->optimize();
$index->commit();
для поиска
Zend_Search_Lucene_Analysis_Analyzer :: SetDefault (
новый Zend_Search_Lucene_Analysis_Analyzer_Common_Utf8Num_CaseInsensitive ());
$ index = Zend_Search_Lucene :: open ($ this -> _ INDEX_PATH_CONST);
Zend_Search_Lucene_Search_QueryParser :: setDefaultEncoding ( ‘UTF-8’);
$termsStr = 'البحث';
$term = new Zend_Search_Lucene_Index_Term($termsStr);
$queryTerm = new Zend_Search_Lucene_Search_Query_Term($term);
$hits = $index->find(strtolower($queryTerm));
кроме того, что арабский символ закодирован с неправильной кодировкой!
в чем моя проблема, я все перепробовал, но у меня ничего не работает, пожалуйста ПОМОГИТЕ !!
Я решаю проблему, изменяя регулярное выражение в анализаторе
Других решений пока нет …