У ZF1 была отличная реализация поиска Lucene. есть что-то подобное для ZF2? Я ничего не могу найти...
Zend Framework 2 Поиск Lucene?
Ответы (2)
Это часть ZendSearch, и вы найдете его здесь https://github.com/zendframework/ZendSearch.
Если вы просмотрите папки, вы найдете Lucene, но вам, вероятно, потребуется установить все это, следуя инструкциям в файле readme на первой странице, на которую я дал ссылку.
В качестве альтернативы вы можете перейти в каталог вашего поставщика и запустить: -
git clone https://github.com/zendframework/ZendSearch.git
Это создаст модуль ZendSearch, и вы сможете добавить его в список модулей в application.config.php.
Также см. репозиторий пакетов Zend Framework.
Это для Zend Framework 3 / Zend Search
Следующий код поможет вам начать работу с Zend Search:
use ZendSearch\Lucene\Lucene;
use ZendSearch\Lucene\Document;
use ZendSearch\Lucene\Document\Field;
use ZendSearch\Lucene\MultiSearcher;
$index = Lucene::create($path_to_index); // or use open to update an index
$document = new Document;
$document->addField(Field::Text($key,$value));
$index->addDocument($document);
$search = Lucene::open($path_to_index);
$search->find($str);
Однако стоит отметить, что на момент написания Zend Search ожидает наличия ErrorHandler::, который является частью Stdlib Zend. Я считаю, что это было удалено из stdlib, поэтому я просто заменил эти вызовы блоком try/catch.
Помимо приведенного выше примера, код в руководстве ZF v1 обеспечивает довольно хорошую основу для работы с точки зрения функциональности: https://framework.zend.com/manual/1.12/en/zend.search.lucene.overview.html.