라이브러리
[PHP] SolrQuery::getMltMaxNumTokens - TermVector 지원으로 저장되지 않은 각 문서 필드에서 구문 분석할 토큰의 최대 수를 반환합니다.
PHP에서 SolrQuery::getMltMaxNumTokens에 대한 설명
SolrQuery::getMltMaxNumTokens은 SOLR에서 MultiTerm Highlighting (MLT) 기능을 사용할 때 token의 최대 수를 지정하는 메소드입니다. MLT는 문서 내의 단어를 강조할 때 사용됩니다. 예를 들어, 검색어 "apple"가 포함된 문서에서 "apple"을 강조하고 싶을 때 사용할 수 있습니다.
예제
#hostingforum.kr
php
require_once 'vendor/autoload.php';
use SolariumClient;
use SolariumCoreQueryQueryInterface;
use SolariumQueryTypeSelectQueryQuery;
$client = new Client([
'url' => 'http://localhost:8983/solr/mycollection',
'username' => 'myuser',
'password' => 'mypassword'
]);
$query = $client->createSelect();
$query->setQuery('apple');
$query->setHighlighting(true);
$query->addHighlightField('title');
$query->setHighlightSimplePre('');
$query->setHighlightSimplePost('');
$query->getHighlighting()->setMltMaxNumTokens(5);
$result = $client->execute($query);
foreach ($result->getDocuments() as $document) {
echo $document->getTitle() . "
";
echo $document->getHighlighting() . "
";
}
설명
- `getMltMaxNumTokens` 메소드는 MLT에서 token의 최대 수를 지정합니다. 예를 들어, `setMltMaxNumTokens(5)`를 호출하면 MLT에서 5개의 token만 사용합니다.
- `addHighlightField` 메소드는 강조할 필드를 지정합니다. 예를 들어, `addHighlightField('title')`를 호출하면 `title` 필드를 강조합니다.
- `setHighlightSimplePre` 메소드는 강조하기 전에 추가할 문자열을 지정합니다. 예를 들어, `setHighlightSimplePre('')`를 호출하면 강조하기 전에 `` 문자열을 추가합니다.
- `setHighlightSimplePost` 메소드는 강조 후에 추가할 문자열을 지정합니다. 예를 들어, `setHighlightSimplePost('')`를 호출하면 강조 후에 `` 문자열을 추가합니다.
- `getHighlighting` 메소드는 강조 결과를 가져옵니다.
참고
- SOLR의 MLT 기능은 문서 내의 단어를 강조할 때 사용됩니다.
- MLT는 문서 내의 단어를 강조할 때 token의 최대 수를 지정할 수 있습니다.
- `getMltMaxNumTokens` 메소드는 MLT에서 token의 최대 수를 지정합니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.