是否有一个专用的solr函数来返回索引



我尝试遵循官方文档(http://www.php.net/manual/en/book.solr.php)中php中solr的基本示例。

我想写一个简单地返回solr索引的函数。

例如,考虑以下代码:
$options = array( 'hostname' => SOLR_SERVER_HOSTNAME );
$client = new SolrClient($options);
$doc = new SolrInputDocument();
$doc->addField('id', 12345);
$doc->addField('title', 'Stack Overflow');
$client->addDocument($doc);
$client->commit();

这工作完美。但是,假设我想写一个函数,它只返回solr索引。例如:

function get_index(){
   $index = //something here
   ...
   return $index;
}

我该怎么做?这可能吗?我是solr的新手,我正在使用PECL solr客户端。(http://www.php.net/manual/en/book.solr.php)

请参考示例#4 &Solr PECL客户端的示例页面中的#5。然后,您可以构建一个搜索并返回所有字段的查询,如下所示:

 $options = array (
     'hostname' => SOLR_SERVER_HOSTNAME,
     'port'     => SOLR_SERVER_PORT);
 $client = new SolrClient($options);
 $query = new SolrQuery();
 $query->setQuery('*:*');  // *:* means search all fields for all values.
 $query->setStart(0);
 $query->setRows(100000); //very large to ensure all rows are returned.
 $query->addField('*'); // * will return all fields
 $query_response = $client->query($query);
 $query_response->setParseMode(SolrQueryResponse::PARSE_SOLR_DOC);
 $response = $query_response->getResponse();
 print_r($response);

有关查询Solr的详细信息和可以使用的选项,请参考以下内容:

  • 在Solr中搜索
  • Solr查询语法常用查询参数

最新更新