2010-01-19 45 views
1
$index = Zend_Search_Lucene::open("/data/my_index1"); 

$doc = new Zend_Search_Lucene_Document(); 

$doc->addField(Zend_Search_Lucene_Field::Text('type','auto')); 

$index->addDocument($doc); 

$term = new Zend_Search_Lucene_Index_Term('auto*'); 

$query = new Zend_Search_Lucene_Search_Query_Wildcard($term); 

$hits = $index->find($query); 

foreach ($hits as $hit){ 

    echo $hit->type; 

} 

成功執行此代碼後,它需要打印自動。但數組$ hit是空的。Zend Lucene中的通配符查詢

這是什麼原因?

+1

對不起,在標題,而不是模糊它必須是通配符 – 2010-01-19 06:34:46

+0

編輯的問題,以更好的可讀性/理解。 – 2010-01-20 19:43:03

回答

0

您可能需要幽默我在這裏,但你嘗試過更換:

$term = new Zend_Search_Lucene_Index_Term('auto*'); 

$query = new Zend_Search_Lucene_Search_Query_Wildcard($term); 

$hits = $index->find($query); 

$hits = $index->find('auto*'); 
1

晚兩年,但有可能的原因是,所做的更改不會提交到指數。文檔添加後,您需要調用commit方法使其可用於搜索。