
SolrQuery::getHighlightSnippets 메소드는 Solr 검색 엔진에서 문서의 하이라이트 스니펫을 가져올 때 사용하는 메소드입니다. 하이라이트 스니펫은 문서에서 검색 키워드가 포함된 중요한 부분을 의미하며, 문서의 요약을 제공하는 데 사용됩니다.
이 메소드를 사용할 때, 다음 파라미터를 설정해야 합니다.
- highlight: 하이라이트 스니펫을 가져올 문서의 필드 이름을 지정합니다. 예를 들어, `highlight => 'title'`로 설정하면 제목 필드의 하이라이트 스니펫을 가져올 수 있습니다.
- hl.snippets: 가져올 하이라이트 스니펫의 수를 지정합니다. 예를 들어, `hl.snippets => 2`로 설정하면 2개의 하이라이트 스니펫을 가져올 수 있습니다.
- hl.fragsize: 한 하이라이트 스니펫의 크기를 지정합니다. 예를 들어, `hl.fragsize => 50`로 설정하면 한 하이라이트 스니펫의 크기를 50자로 지정할 수 있습니다.
- hl.tag.pre: 하이라이트 스니펫의 시작 태그를 지정합니다. 예를 들어, `hl.tag.pre => ''`로 설정하면 하이라이트 스니펫의 시작 태그를 ``로 지정할 수 있습니다.
- hl.tag.post: 하이라이트 스니펫의 끝 태그를 지정합니다. 예를 들어, `hl.tag.post => ''`로 설정하면 하이라이트 스니펫의 끝 태그를 ``로 지정할 수 있습니다.
예를 들어, 다음 코드는 제목 필드의 하이라이트 스니펫을 가져올 때 사용할 수 있습니다.
#hostingforum.kr
php
$query = new SolrQuery();
$query->addHighlightField('title');
$query->setHighlightSnippets(2);
$query->setHighlightFragsize(50);
$query->setHighlightTagPre('');
$query->setHighlightTagPost('');
$result = $client->search($query);
이 코드는 제목 필드의 하이라이트 스니펫을 가져올 때, 2개의 하이라이트 스니펫을 가져오고, 각 하이라이트 스니펫의 크기를 50자로 지정하며, 하이라이트 스니펫의 시작 태그를 ``로, 끝 태그를 ``로 지정합니다.
2025-07-19 18:23