2017-12-18 7 views
1

패셔닝 결과를 얻으려고하고 있는데 어떻게해야할지 모르겠다. solr-php-client에 대한 문서는 없습니다. 이 예제에서는 print_r($response->getRawResponse())에면 처리가 포함되지 않습니다. 날씨 패싯이 성공적으로 요청되지 않았는지 또는 응답의 패 시팅 데이터에 액세스하는 문제인지 확신 할 수 없습니다. solr-php-client에 온라인으로 제공되는 설명서가있는 경우에도 도와주세요.solr PHP 클라이언트와의 패닝

타 문제는 내가 search 가지 인자에 $additionalParameters을 추가 놓친 solr-php-client

require_once('solr-php-client/Apache/Solr/Service.php'); 


$solr = new Apache_Solr_Service('localhost', '8983', '/solr/products'); 

if (! $solr->ping()) { 
    echo 'Solr service not responding.'; 
    exit; 
} 


$offset = 0; 
$limit = 10; 


$queries = array(
    'name:iphone' 
); 
$additionalParameters = array(
    'facet' => 'true', 
    'facet.field' => array(
    'category' 
) 
); 

foreach ($queries as $query) { 
$response = $solr->search($query, $offset, $limit); 

if ($response->getHttpStatus() == 200) { 
    print_r($response->getRawResponse()); 

    if ($response->response->numFound > 0) { 
    echo "$query <br />"; 

    foreach ($response->response->docs as $doc) { 
     echo "$doc->id $doc->name <br />"; 
    } 

    echo '<br />'; 
    }else{ 
    echo "zero results"; 
    } 
} 
else { 
    echo $response->getHttpStatusMessage(); 
    } 
} 

답변

0

의 인스턴스를 시작할 때 SOLR가 보호되는 경우 "사용자/암호"를 선언하는 방법이다;

$response = $solr->search($query, $offset, $limit,$additionalParameters);