라이브러리

[PHP] SolrQuery::setHighlightRequireFieldMatch - 강조 표시 중 필드 일치 필요




SolrQuery::setHighlightRequireFieldMatch

SolrQuery::setHighlightRequireFieldMatch는 Solr 쿼리에서 하이라이트 기능을 사용할 때 필드 매칭을 요구하는지 여부를 결정하는 메소드입니다. 기본적으로 이 옵션은 false로 설정되어 있습니다. 이 옵션을 true로 설정하면, 하이라이트가 필드 매칭을 만족하지 않는 경우에 반환되지 않습니다.

예제

아래 예제는 SolrQuery::setHighlightRequireFieldMatch를 true로 설정하여 필드 매칭을 요구하는 하이라이트 쿼리를 생성하는 방법을 보여줍니다.

#hostingforum.kr
php

use SolariumClient;

use SolariumQueryTypeSelectQueryQuery;



// Solr 클라이언트 생성

$client = new Client();



// 쿼리 생성

$query = $client->createSelect();



// 하이라이트 설정

$query->setHighlighting(true);

$query->addHighlightField('name'); // 하이라이트할 필드



// 필드 매칭을 요구하는 하이라이트 쿼리 생성

$query->getHighlighting()->setRequireFieldMatch(true);



// 쿼리 실행

$result = $client->query($query);



// 결과 출력

foreach ($result->getDocuments() as $document) {

    echo $document->getField('name') . "
";

    echo $document->getHighlighting() . "
";

}



필드 매칭을 요구하는 하이라이트 쿼리

위 예제에서 필드 매칭을 요구하는 하이라이트 쿼리를 생성하는 코드는 다음과 같습니다.

#hostingforum.kr
php

$query->getHighlighting()->setRequireFieldMatch(true);



이 코드는 하이라이트 쿼리에서 필드 매칭을 요구하도록 설정합니다. 필드 매칭을 요구하는 하이라이트 쿼리를 생성하면, 하이라이트가 필드 매칭을 만족하지 않는 경우에 반환되지 않습니다.

필드 매칭이 불필요한 하이라이트 쿼리

필드 매칭을 요구하지 않는 하이라이트 쿼리를 생성하려면, 다음 코드를 사용합니다.

#hostingforum.kr
php

$query->getHighlighting()->setRequireFieldMatch(false);



이 코드는 하이라이트 쿼리에서 필드 매칭을 요구하지 않도록 설정합니다. 필드 매칭이 불필요한 하이라이트 쿼리를 생성하면, 하이라이트가 필드 매칭을 만족하지 않아도 반환됩니다.

결론

SolrQuery::setHighlightRequireFieldMatch는 Solr 쿼리에서 하이라이트 기능을 사용할 때 필드 매칭을 요구하는지 여부를 결정하는 메소드입니다. 필드 매칭을 요구하는 하이라이트 쿼리를 생성하려면, setRequireFieldMatch(true)를 사용하고, 필드 매칭이 불필요한 하이라이트 쿼리를 생성하려면, setRequireFieldMatch(false)를 사용합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 8,985건 / 151 페이지

검색

게시물 검색