Almacenar un array como campo de tipo documento en Zend



   AUTOR PREGUNTA

Publicado 31 julio 2014 - 20:16

Existe una manera de almacenar un array como un campo de tipo documento y luego consultar ese array


¿Tienes la misma pregunta? Yo también

 

Publicado 31 julio 2014 - 20:34

creo que lo buscas es la utilidad de Lucene

 

Publicado 31 julio 2014 - 20:37

Te recomiendo Lucene, entonces primero creas el index y añades el array como un documento:

$index = Zend_Search_Lucene::create('/data/my-index');
foreach($data as $row){ $doc = new Zend_Search_Lucene_Document(); $doc->addField(Zend_Search_Lucene_Field::Text('url', $row['url'])); $doc->addField(Zend_Search_Lucene_Field::Text('tag', $row['tag'])); $doc->addField(Zend_Search_Lucene_Field::UnStored('contents', $row['content']));
$index->addDocument($doc); }

Y para realizar el query o consulta, lo siguiente:

$index = Zend_Search_Lucene::open('/data/my_index');
$hits = $index->find('tag:55 AND tag:67');
foreach ($hits as $hit) {
echo $hit->score;
echo $hit->url; 
echo $hit->tag;
}

   AUTOR PREGUNTA

Publicado 31 julio 2014 - 21:08

Gracias Jhony, me ha venido de perlas tu código