0
J'essaie de joker un champ en utilisant Zend recherche Lucene.Utilisation de Zend Search Lucene avec joker
$index = Zend_Search_Lucene::open("/data/my_index1");
$doc = new Zend_Search_Lucene_Document();
$doc->addField(Zend_Search_Lucene_Field::Text('date',$date->format('dmY')));
$index->addDocument($doc);
$index->updateIndex();
$hits = $index->find('2012*');
La dernière ligne ne fonctionne pas parce que ma date est quelque chose comme 02062012
. Si j'essaye avec $hits = $index->find('*2012*');
ne fonctionne pas non plus.
Une idée?
Vous devriez vérifier si la date est indexée correctement. Certains analyseurs ne marqueront pas les chiffres et les dates. Vous devriez parcourir votre index avec luke pour voir si votre index contient les termes attendus. – dbrumann
Je pense que l'index est ok parce que si j'essaye avec '$ hits = $ index-> find ('02062012');' fonctionne comme il se doit. –
Avez-vous essayé '$ index-> find ('0206 *');'? Je ne suis pas sûr, mais je pense que l'utilisation de l'astérisque dans votre requête ne fonctionne pas, car il est à la recherche de termes qui contiennent 2012 suivi par quelque chose. – dbrumann