2015-01-20 4 views
-1

Zend_Search_lucene을 사용하고 있습니다. 1.12 영어 검색을위한 코드 부호가 있습니다. & 아라비아어 데이터는 영어는 잘 작동하지만 아랍어는 잘못된 결과를 얻습니다. 이 내 검색 Zend_Search_Lucene_Analysis_Analyzer에 대한 코드Zend_Search_Lucene 1.12 아라비아어를 사용하는 Codeigniter

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

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

게다가 아랍어 문자가 잘못된 인코딩으로 인코딩되었습니다. 내 문제는 무엇인가, 모든 것을 시도했지만 나에게 아무런 도움이되지 않습니다. 제발 도와주세요 !!

답변

0

분석기의 정규 표현식을 변경하여이 문제를 해결합니다.