$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 пуст.
В чем причина этого?
Два года спустя, но вероятная причина в том, что ваши изменения не зафиксированы в индексе. После добавления документа необходимо вызвать метод commit, чтобы сделать его доступным для поиска.
Возможно, вам здесь нужно меня развеселить, но вы пробовали заменить:
$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*');