函数名称:SolrQuery::setHighlight()
函数描述:设置 Solr 查询对象的高亮参数
适用版本:Solr 4.0.0 以上版本
用法:
public SolrQuery SolrQuery::setHighlight ( bool $flag )
参数:
- $flag: 一个布尔值,用于指定是否启用高亮,默认为 false。
返回值:
- 返回一个 SolrQuery 对象,用于链式调用其他 SolrQuery 方法。
示例:
// 创建 Solr 查询对象
$query = new SolrQuery();
// 启用高亮
$query->setHighlight(true);
// 设置高亮字段
$query->setHighlightFields('title, content');
// 设置高亮的前缀和后缀
$query->setHighlightSimplePre('<em>');
$query->setHighlightSimplePost('</em>');
// 设置高亮的片段大小
$query->setHighlightFragsize(100);
// 设置高亮的最大片段数
$query->setHighlightSnippets(3);
// 执行查询
$response = $client->query($query);
// 获取高亮结果
$highlighting = $response->getHighlighting();
注意事项:
- 在调用 SolrQuery::setHighlight() 方法之前,需要先创建一个 SolrQuery 对象,并通过 Solr 客户端执行查询。
- 在启用高亮之后,还需要使用其他相关方法来设置高亮的字段、前缀、后缀、片段大小和最大片段数等参数。
- 最后,通过 SolrResponse 对象的 getHighlighting() 方法可以获取到高亮结果。