函数名称:SolrQuery::setHighlightFormatter()
函数描述:设置Solr查询的高亮显示格式化器。
适用版本:此函数适用于Solr PHP扩展的所有版本。
用法:
SolrQuery::setHighlightFormatter( string $formatter [, string $field_override ] ) : SolrQuery
参数:
$formatter
:要使用的高亮显示格式化器的名称。可选值有:"simple"、"html"、"regex"和"none"。对于自定义格式化器,可以传递格式化器类的名称。$field_override
:要覆盖的字段名称(可选)。如果提供了此参数,则使用指定的字段名称进行高亮显示,而不是使用Solr查询中定义的字段。
返回值:返回SolrQuery对象本身,以便支持方法链。
示例:
$query = new SolrQuery("php"); // 创建一个Solr查询对象
$query->setHighlight(true); // 打开高亮显示
// 设置高亮显示格式化器为"html",覆盖字段为"title"
$query->setHighlightFormatter("html", "title");
// 执行查询
$response = $client->query($query);
// 获取高亮显示结果
$highlighting = $response->getHighlighting();
$highlightedTitle = $highlighting["doc_id"]["title"][0];
echo "高亮显示的标题:$highlightedTitle";
在上面的示例中,我们首先创建了一个Solr查询对象,并设置查询关键字为"php"。然后,我们打开了高亮显示功能,并使用setHighlightFormatter()
函数将高亮显示格式化器设置为"html"。我们还使用setHighlightFormatter()
函数的第二个参数,将要覆盖的字段设置为"title"。最后,我们执行查询,并从响应中获取高亮显示结果。最终,我们将高亮显示的标题打印出来。