¿Cómo usar ZendSearch con CodeIgniter 2.1.3?
zend-framework zend-framework2 (1)
Tienes la Biblioteca Zend Search Lucene para Codeigniter.
Para la búsqueda de Lucene, primero debe crear el índice y luego crear el documento de índice en el que se realiza la operación de búsqueda real.
$index = Zend_Search_Lucene::create($CI->base_index_path . ''/index_folder'');
$doc = new Zend_Search_Lucene_Document();
y luego agregue campos como este desde sus tablas de bases de datos:
$doc->addField(Zend_Search_Lucene_Field::Keyword(''id'', $object->id));
$index->addDocument($doc);
Y finalmente use lo siguiente, $q
es el parámetro de búsqueda que desea buscar en este índice.
$data[''query''] = $q;
$query = "name:/"" . $q . "/" or full_desc:/"" . $q . "/"";
$query_result = $index->find($query);
Sé que ZendSearch en Zend Framework 2 es similar con Zend Search Lucene en Zend Framework 1.12. Intenté usar Zend Search Lucene con CodeIgniter 2.1.3. El proceso de indexación y búsqueda funciona bien, pero todavía da algunos errores (advertencias) como este:
Warning: include(application/errors/error_php.php) [function.include]: failed to open stream: No such file or directory in C:/path/to/system/core/Exceptions.php on line 182
Warning: include() [function.include]: Failed opening ''application/errors/error_php.php'' for inclusion (include_path=''.;C:/php5/pear;application/libraries'') in C:/path/to/system/core/Exceptions.php on line 182
Fatal error: require_once() [function.require]: Failed opening required ''Zend/Search/Lucene/Storage/File/Filesystem.php'' (include_path=''.;C:/php5/pear;application/libraries'') in C:/path/to/application/libraries/Zend/Search/Lucene/Storage/Directory/Filesystem.php on line 349
Que los errores aparecen después de seguir este artículo cuando trato de usar la biblioteca Zend Search Lucene en mi aplicación codeigniter. Dudo que el artículo y Zend Search Lucene sigan siendo válidos cuando se use con codeigniter 2.1.3 y ahora quiero usar ZendSearch.
Entonces, ¿cómo usar ZendSearch con CodeIgniter 2.1.3?