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;

}

这段代码执行成功后,需要打印auto。但是数组 $hits 是空的。

这背后的原因是什么?

4

2 回答 2

1

晚了两年,但可能的原因是您的更改未提交给索引。添加文档后,您需要调用 commit 方法使其可用于搜索。

于 2012-03-19T09:38:21.460 回答
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*');
于 2010-01-21T05:29:52.390 回答