Zend_Search_Lucene 1.12 Codeigniter与阿拉伯语

时间:2015-01-20 12:48:22

标签: php codeigniter arabic zend-search-lucene

我正在使用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(     new 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));   

除了阿拉伯字符被编码错误编码! 我的问题是什么,我已经尝试了一切,但没有什么对我有用,请帮助!!

1 个答案:

答案 0 :(得分:0)

我通过更改分析器

中的正则表达式来解决问题