PHP搜索Solr文档(含高亮)

 1 <?php
 2 
 3 $options = array
 4     (
 5     ‘hostname‘ => ‘localhost‘,
 6     ‘port‘ => ‘8080‘,
 7     ‘path‘ => ‘solr/help_category‘,
 8     ‘wt‘ => ‘json‘
 9 );
10 $client = new SolrClient($options);
11 try {
12     $client->ping();
13 } Catch (Exception $e) {
14     exit(‘未连接‘);
15 }
16 
17 $query = new SolrQuery();
18 $query->setQuery(‘title:账户‘);
19 
20 $query->setStart(0);
21 $query->setRows(20);
22 
23 $query->addField(‘title‘)->addField(‘id‘);
24 $query->addHighlightField(‘title‘);
25 $query->setHighlight(true);
26 $query->setHighlightSimplePre("<span style=‘color:blue‘>");
27 $query->setHighlightSimplePost(‘</span>‘);
28 
29 $query_response = $client->query($query);
30 $response = $query_response->getResponse();
31 var_dump($query_response->getRequestUrl());
32 var_dump($query_response->getRawRequest());
33 var_dump($response[‘highlighting‘]); //可以通过foreach找出高亮部分
34 if ($response[‘response‘][‘numFound‘] > 0) {
35     foreach ($response[‘response‘][‘docs‘] as $doc) {
36         echo $doc[‘title‘];
37         echo ‘<br><br>‘;
38     }
39 }
40 ?>

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。