source: sandbox/expresso-solr/expressoMail1_2/inc/solrclient/examples/2.1.5.8-distributed-search.php @ 7576

Revision 7576, 1.1 KB checked in by adir, 11 years ago (diff)

Ticket #000 - Adicionando a integracao de buscas com Solr na base a ser isnerida na comunidade

Line 
1<?php
2
3require('init.php');
4htmlHeader();
5
6// create a client instance
7$client = new Solarium_Client($config);
8
9// get a select query instance
10$query = $client->createSelect();
11
12// add distributed search settings
13// see http://wiki.apache.org/solr/DistributedSearch#Distributed_Search_Example for setting up two solr instances
14$distributedSearch = $query->getDistributedSearch();
15$distributedSearch->addShard('shard1', 'localhost:8983/solr');
16$distributedSearch->addShard('shard2', 'localhost:7574/solr');
17
18// this executes the query and returns the result
19$resultset = $client->select($query);
20
21// display the total number of documents found by solr
22echo 'NumFound: '.$resultset->getNumFound();
23
24// show documents using the resultset iterator
25foreach ($resultset as $document) {
26
27    echo '<hr/><table>';
28
29    // the documents are also iterable, to get all fields
30    foreach($document AS $field => $value)
31    {
32        // this converts multivalue fields to a comma-separated string
33        if(is_array($value)) $value = implode(', ', $value);
34
35        echo '<tr><th>' . $field . '</th><td>' . $value . '</td></tr>';
36    }
37
38    echo '</table>';
39}
40
41htmlFooter();
Note: See TracBrowser for help on using the repository browser.