zrt-lab / zrt-service-solr
Zend Framework 1 Solr 包
dev-master
2014-06-30 21:09 UTC
Requires
- php: >=5.3.3
- bombayworks/zendframework1: 1.*
- solarium/solarium: 3.*
Requires (Dev)
- fabpot/php-cs-fixer: dev-master
- fzaninotto/faker: dev-master
- phpunit/dbunit: *
- phpunit/phpunit: 4.1.0
This package is auto-updated.
Last update: 2024-09-29 03:57:49 UTC
README
为什么?
如何使用
将 "zrtlab/zend-service-solr": "dev-develop"
添加到你的 composer.json 的 require 部分,包括 composer 自动加载器,即可使用。
生成 Solr 客户端实例的一种方法是,在 application.ini 中添加连接参数
zrt.services.solr.endpoint.collection.host = 127.0.0.1 zrt.services.solr.endpoint.collection.port = 8080 zrt.services.solr.endpoint.collection.path = /solr zrt.services.solr.endpoint.collection.core = aviso zrt.services.solr.endpoint.collection.timeout = 5
继承自 Zrt_Application_Bootstrap_Bootstrap 类的 Bootstrap
<?php class Bootstrap extends Zrt_Application_Bootstrap_Bootstrap { ...
通过 Bootstrap 将实例注册到 Zend_Registry,索引为 "zend.service.solr"
示例
class Test_SolariumController extends Zend_Controller_Action { public function indexAction() { $client = Zend_Registry::get('zrt.service.solr'); $query = $client->createQuery($client::QUERY_SELECT); $resultset = $client->execute($query); echo 'NumFound: '.$resultset->getNumFound(); foreach ($resultset as $document) { echo '<hr/><table>'; foreach ($document as $field => $value) { if (is_array($value)) { $value = implode(', ', $value); } echo '<tr><th>' . $field . '</th><td>' . $value . '</td></tr>'; } echo '</table>'; } exit; } }