라이브러리

[PHP] SolrQuery::setFacetSort - 패싯 필드 제약 조건의 순서를 결정합니다.




PHP에서 SolrQuery::setFacetSort 사용하기


SolrQuery::setFacetSort 메서드는 facet 필드의 정렬 순서를 지정하는 데 사용됩니다. facet 필드는 검색 결과에서 필터링을 위한 다양한 옵션을 제공합니다. 예를 들어, facet 필드에 "price"를 지정하면 검색 결과에서 가격을 기준으로 필터링할 수 있습니다.

예제


#hostingforum.kr
php

use SolariumClient;

use SolariumQueryTypeQuery;



// Solr 클라이언트 생성

$client = new Client($config);



// 쿼리 생성

$query = $client->createSolrQuery('mycollection')

    ->setQuery('example')

    ->setFacetFields(['price', 'category'])

    ->setFacetSort('price asc') // facet 필드 정렬 순서 지정

    ->setRows(10);



// 쿼리 실행

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



// facet 필드 정렬 순서 확인

$facetFields = $result->getFacetSet()->getFields();

foreach ($facetFields as $field) {

    echo $field->getName() . ': ' . $field->getCount() . ' (' . $field->getSort() . ')' . PHP_EOL;

}



facet 필드 정렬 순서 옵션


facet 필드 정렬 순서에 사용할 수 있는 옵션은 다음과 같습니다.

- `asc`: 오름차순 정렬
- `desc`: 내림차순 정렬

예제: facet 필드 정렬 순서 변경


#hostingforum.kr
php

use SolariumClient;

use SolariumQueryTypeQuery;



// Solr 클라이언트 생성

$client = new Client($config);



// 쿼리 생성

$query = $client->createSolrQuery('mycollection')

    ->setQuery('example')

    ->setFacetFields(['price', 'category'])

    ->setFacetSort('price desc') // facet 필드 정렬 순서 변경 (내림차순)

    ->setRows(10);



// 쿼리 실행

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



// facet 필드 정렬 순서 확인

$facetFields = $result->getFacetSet()->getFields();

foreach ($facetFields as $field) {

    echo $field->getName() . ': ' . $field->getCount() . ' (' . $field->getSort() . ')' . PHP_EOL;

}



참고


- SolrQuery::setFacetSort 메서드는 facet 필드의 정렬 순서를 지정하는 데 사용됩니다.
- facet 필드 정렬 순서에 사용할 수 있는 옵션은 `asc` (오름차순)와 `desc` (내림차순)입니다.
- facet 필드 정렬 순서를 변경하려면 `setFacetSort` 메서드를 사용하세요.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

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

검색

게시물 검색